IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Remplacement d'une table par une vue


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 102
    Par défaut Remplacement d'une table par une vue
    Bonjour,

    Je dois implémenter graduellement une nouvelle application .NET tout en gardant fonctionnelle l'ancienne version ACCESS. Cela implique l'utilisation de nouvelles tables SQL.

    Je veux que la version ACCESS lise et écrive dans les nouvelles tables sans changer le code de celle-ci et si possible sans utiliser des TRIGGERS dans les tables SQL. Donc, mon idée est de remplacer l'ancienne table par une vue de la(les) nouvelle(s) table(s).

    Pour les SELECT, ça va fonctionner mais comment faire pour les UPDATE?

    *Aucun Insert ou Delete sera fait à partir de l'ancienne application.


    Merci de vos idées!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 102
    Par défaut
    Bon, j'ai finalement tombé sur quelque chose... il suffit d'avoir les bonnes clés de recherche

    On peut updater une vue... mais je crois que c'est seulement dans le cas où tous les champs de la vue viennent de la même table.

    C'est impossible lorsqu'il y a des JOINs dans la requête de la vue??

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 102
    Par défaut
    On est jamais aussi bien servi que par soi-même.

    J'ai fait le test et l'UPDATE fonctionne très bien même avec un INNER JOIN dans la requête de la vue.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 102
    Par défaut
    Et bien, il paraît qu'on n'est pas fou lorsqu'on parle tout seul mais quand on se répond c'est autre chose...

    Ça ne marche pas mes affaires!

    J'ai des 'Relationships' dans ma table qui m'empêche d'effacer la table. À moins que quelqu'un ait une idée de génie, je devrai me tourner vers les TRIGGERS.

    Leçon à tirer : bien structurer les futurs projets et séparer les couches (métier, donnée..)... WPF et MVVM, j'arrive!

  5. #5
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    Bonjour,

    Je dois implémenter graduellement une nouvelle application .NET tout en gardant fonctionnelle l'ancienne version ACCESS. Cela implique l'utilisation de nouvelles tables SQL.

    Je veux que la version ACCESS lise et écrive dans les nouvelles tables sans changer le code de celle-ci et si possible sans utiliser des TRIGGERS dans les tables SQL. Donc, mon idée est de remplacer l'ancienne table par une vue de la(les) nouvelle(s) table(s).

    Pour les SELECT, ça va fonctionner mais comment faire pour les UPDATE?

    *Aucun Insert ou Delete sera fait à partir de l'ancienne application.
    Si votre vue est triviale, l'update:insert fonctionnera avec les commandes habituelles.
    Mais si votre vue est complexe ce ne sera pas possible et vous devez alors passer par des... TRIGGERS INSTEAD OF :-)

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2006
    Messages : 102
    Par défaut
    Très intéressant ce 'TRIGGERS INSTEAD OF', je ne connaissais pas.


    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. copier une table d'une BDD dans une table d'une autre BDD
    Par faniette dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/05/2013, 10h17
  2. [AC-2003] insert des données d'une table dans une table d'une base externe
    Par marieo dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/11/2009, 14h29
  3. Copier les enregistrements d'une table vers une table d'une autre DB
    Par karinette21 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 18/11/2008, 21h50
  4. Réponses: 4
    Dernier message: 31/10/2007, 20h27
  5. Réponses: 2
    Dernier message: 29/03/2007, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo