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 :

Trigger sur table SQL (Express 2008 R2) [2008R2]


Sujet :

Développement SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut Trigger sur table SQL (Express 2008 R2)
    Bonjour,

    Je suis débutant en sql aussi merci de votre indulgence...
    Dans le cadre d'un petit développement, je dois pouvoir mettre à jour une table SQL depuis une autre. Cela doit se faire dans un trigger.
    Pour les 2 tables, un identifiant (ID) permet de faire l'inner join.
    Problème, ma table cible contient une ligne par ID avec 5 champs (du même enregistrement) à mettre à jour : vb1, vb2, vb3, vb4 et vb5
    alors que la table source contient une ligne par ID ET par valeur de vb que je dois récupérer...
    Je cale!
    Merci de vos suggestions.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    ça s'appelle de la dénormalisation et saimal
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Bonjour,

    Cherchez avec le mot clef PIVOT.
    Vous trouverez des exemples sur le forum (et des explications indiquant pourquoi il ne faut pas le faire )

  4. #4
    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 : 42
    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
    Points : 3 173
    Points
    3 173
    Par défaut
    si le nombre de colonne (5) est figé

    vous pouvez aussi procéder autrement mais il me faudrait la structure de votre deuxième table
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Oui le nb de colonnes est figé à 5 dans mon cas.
    La 2ème table est du type :
    ID, vb ou je peux avoir plusieurs enregistrements avec un ID identique mais comportant des vb différents. Ce sont ces valeurs que je dois récupérer dans la 1ère table...
    Merci de votre aide

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Précisions : dans la table2, les valeurs de vb sont variables pour chaque ID et chaque enregistrement...

  7. #7
    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 : 42
    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
    Points : 3 173
    Points
    3 173
    Par défaut
    Structure de la table merci: liste des colonnes par exemple
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

  8. #8
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Nicos42,

    Votre table CIBLE contient 5 attributs vb1, vb2, ..., vb5 constituant une liste ordonnée par construction.

    Votre table SOURCE contient 5 lignes, c’est un ensemble de 5 paires <ID, vbj> et comme dans tout ensemble dans le contexte relationnel, l’ordre des éléments est quelconque, il n'est pas significatif : comment savoir parmi ces 5 paires de la table SOURCE quelle est celle qui met à jour par exemple l’attribut vb1 cible ?

    Avant de vous enliser à cause d’une approche hasardeuse de la modélisation, il est temps de repartir à zéro, casser la structure de la table CIBLE et bâtir un modèle dans l’esprit du modèle relationnel de données, la table SOURCE doit être structurée de façon saine, à l’image de la table SOURCE (une paire( ID, vb) par ligne). Pour les deux tables, il faut aussi ajouter un attribut complétant l'identifiant ID, car vos attributs vb sont modifiables, donc impropres à participer à l'identification.

    S’il s’agit de présenter l’information sous la forme (ID, b1, v2, ..., vbn), il existe des solutions pour cela (CUBE, UNION, ....), mais cela ne doit avoir aucune incidence sur la structure des tables.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Dans mon exemple (la vraie table à plus de colonnes) :
    ID et VB où ID est l'identifiant qui me permet de regrouper les différents VB

    Ce qui pourrait être TABLE2 :
    ID = 1;VB = 12
    ID = 1; VB = 15
    ID = 2; VB = 10
    ID = 2; VB = 12
    ID = 2; VB = 18
    ID = 2; VB = 15
    ID = 3; VB = 20
    ect...
    Alors que Table1 :
    ID = n; VB1 = à compléter; VB2 = à compléter; VB3 = à compléter; VB4 = à compléter; VB5 = à compléter;

    Ce que je veux obtenir :
    Table1 :
    ID = 1; VB1=12;VB2=15;;;
    ID = 2;VB1=10;VB2=12;VB3=18;VB4=15;;
    ID = 3;VB1=20;;;;

  10. #10
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Et pourquoi la valeur 18 pour l'ID 2 serait-elle placée dans la colonne VB3 et pas VB4 ou VB2 ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    En réponse à la question de AL1_24, l'ordre n'aura pas d'importance. Il faut juste commencer par renseigner VB1 puis VB2 puis VB3 puis etc... si tant est qu'il y ait plusieurs VB pour un même ID

  12. #12
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Une incidente :

    Citation Envoyé par al1_24 Voir le message
    ça s'appelle de la dénormalisation et saimal
    En fait la table en cause est normalisée, mais, pour suivre Chris Date, elle pêche par ce qu’on appelle en franglais « optimisation », mais je suis d’accord que ça aussi saimal, et même certains chez IBM ne sont pas bien au courant à ce sujet (du reste, ils s'en tapent)...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  13. #13
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par Nicos42 Voir le message
    Ce qui pourrait être TABLE2 :
    ID = 1; VB = 12
    ID = 1; VB = 15
    ID = 2; VB = 10
    ID = 2; VB = 12
    ID = 2; VB = 18
    ID = 2; VB = 15
    ID = 3; VB = 20
    Etc...
    Et si l’on avait les valeurs suivantes (doublons) :

    ID = 1; VB = 12
    ID = 1; VB = 12
    Etc.

    TABLE2 a-t-elle une clé primaire ? Si oui, qu’elle est-elle ? (A défaut c’est un sac et les opérateurs relationnels sont mis en échec puisqu’ils opèrent sur des ensembles).
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    En fait Table2 est une vue issue d'une autre base. Dans tous les cas, il ne peut y avoir de doublon tel que l'exemple cité...

  15. #15
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par Nicos42 Voir le message
    En fait Table2 est une vue issue d'une autre base. Dans tous les cas, il ne peut y avoir de doublon tel que l'exemple cité...
    C’est vous qui le dites, mais je ferai observer qu’une vue SQL n’est pas dotée de clé, donc rien de plus facile que d’y injecter des doublons, d’en faire un sac.

    Quoi qu’il en soit, vous voulez que l’opération se fasse au moyen d’un trigger. Celui –ci porte donc sur la table CIBLE.

    Mais pour activer ce trigger, il faut exécuter un INSERT : à quoi ressemble celui-ci ?
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  16. #16
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    En fait la vue en question serait Table2 dans mon exemple précédent.

    Le trigger est créé sur Table1 car Table1 est mise à jour par une autre tâche et sur cette tâche que je déclenche le trigger.
    L'objectif est que ce trigger permette de mettre à jour Table1 avec les 5 champs POTENTIELS de VB1,2,3,4,5 pour un ID commun aux 2 tables.

    J'ai essayé INNER JOIN, MERGE INTO WHEN MATCHED, mais je coince toujours sur le fait que j'ai dans Table2 plusieurs lignes (1 ou 2 ou 3 ou 4 ou 5) pour un même ID alors que dans Table1 je veux une ligne par ID identique avec plusieurs champs VB1,2,3,4,5 avec VBn = NULL si dans Table2 je n'ai que n-1 ligne pour un même ID.

    J'espère arrivé à me faire comprendre...pardonnez ma méconnaissance de SQL

  17. #17
    Futur Membre du Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2014
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Précision : je peux avoir plus de 5000 valeurs différentes de VB....

  18. #18
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut Méthode bourrin ?
    Bonsoir,



    Citation Envoyé par Nicos42 Voir le message
    ma table cible contient une ligne par ID avec 5 champs (du même enregistrement) à mettre à jour : vb1, vb2, vb3, vb4 et vb5
    Supposons que votre table cible ressemble à quelque chose comme ceci :

    TABLE CIBLE
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE TABLE CIBLE 
    (
            ID              INT             NOT NULL
          , vb1             VARCHAR (4)                  
          , vb2             VARCHAR (4)      
          , vb3             VARCHAR (4)                  
          , vb4             VARCHAR (4)                  
          , vb5             VARCHAR (4)                  
        , CONSTRAINT CIBLE_PK PRIMARY KEY (ID)                    
    ) ;

    Et que votre table source ressemble à quelque chose comme ceci :

    TABLE SOURCE
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE TABLE SOURCE 
    (
            K               INT             NOT NULL 
          , ID              INT             NOT NULL
          , vb              VARCHAR (4)     NOT NULL  
        , CONSTRAINT SOURCE_PK PRIMARY KEY (K)             
    ) ;

    Avec les valeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    K    ID    vb
    -------------
    1     1    12
    2     1    15
    3     2    10
    4     2    12
    5     2    18
    6     2    15
    7     2    11

    Vous pourriez mettre en œuvre une table à l’image de SOURCE, mais où l’on se sert de l’identification relative :

    TABLE SOURCE2
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE TABLE SOURCE2
    (
            ID              INT             NOT NULL
          , IdRel           INT             NOT NULL
          , vb              VARCHAR (4)     NOT NULL  
        , CONSTRAINT SOURCE2_PK PRIMARY KEY (ID, IdRel)
    ) ;

    Cette table SOURCE2 serait à peupler à partir de la table SOURCE, avec pour résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ID    IdRel    vb
    -----------------
     1        1    12
     1        2    15
     2        1    10
     2        2    12
     2        3    18
     2        4    15
     2        5    11
    Cette fois-ci, avec la colonne IdRel , on aura numéroté les lignes relativement à la colonne ID. Pour réaliser cette opération, les cracks de SQL sauront vous conseiller, en utilisant des fonctions ad-hoc (RowId(), ... ?), ou un trigger, sinon ça sera la méthode bourrin (parcours de la table SOURCE par curseur, pour alimenter la table SOURCE2).

    A partir de SOURCE2, la mise à jour de la table CIBLE devient simple :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    UPDATE CIBLE 
        SET vb1 = (SELECT vb FROM SOURCE2 WHERE CIBLE.ID = SOURCE2.ID AND IdRel = 1) 
          , vb2 = (SELECT vb FROM SOURCE2 WHERE CIBLE.ID = SOURCE2.ID AND IdRel = 2) 
          , vb3 = (SELECT vb FROM SOURCE2 WHERE CIBLE.ID = SOURCE2.ID AND IdRel = 3)
          , vb4 = (SELECT vb FROM SOURCE2 WHERE CIBLE.ID = SOURCE2.ID AND IdRel = 4)
          , vb5 = (SELECT vb FROM SOURCE2 WHERE CIBLE.ID = SOURCE2.ID AND IdRel = 5) ;


    Tout ceci est assez lourd, mais de mon côté je n’utilise pas SQL Server tous les jours, un crack saura alléger tout ça...

    A suivre...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  19. #19
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Déjà faire un déclencheur pour dupliquer des données alors qu'il est possible de faire cela par une vue est une imbécilité, mais en plus lorsque cela à pour vocation de faire de la cosmétique, c'est de la démence !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  20. #20
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Salut Fred,


    Merci de ta visite, je pense que Nicos42 sera fort ravi que tu présentes ta solution !
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [2008] avis sur Microsoft® SQL Server® 2008 Management Studio Express
    Par fahdijbeli dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 13/09/2013, 07h43
  2. Réponses: 4
    Dernier message: 05/04/2011, 08h32
  3. Requête paramètrer sur table SQL Server 2000
    Par Andry dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/06/2007, 11h24
  4. Boucle while avec action sur table SQL
    Par kamikazbe dans le forum JDBC
    Réponses: 4
    Dernier message: 01/06/2007, 11h46
  5. URGENT: tri sur table SQL
    Par clairette dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/05/2005, 14h53

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