Creation d'un trigger

Bonjour ici trigger_M@N,

Donc voila je souhaite créer une table à partir de deux autres. ça j'ai réussit à faire. Cependant, je dois mettre à jour la table crée si une des deux tables d'origine est modifiée.

Mes tables de départ étant : ods_order et ods_order_detail
Ma table d'arrivée : dwh_ventes

Comment faire ?

voilà une esquisse voir une ébauche de ce que j'ai pu produire ;)

CREATE TRIGGER maj
AFTER INSERT ON ods_order,ods-order_detail
BEGIN
INSERT INTO dwh_ventes ;
END maj;

Merci de vous interessez à mon problème en échange d'une cyber bière !!!

Trigger_M@N
Configuration: Linux
Firefox 2.0.0.4

6 réponses

  1. Je pense qu'il faudrait récupérer l'ID du dernier enregistrement... Et de le reproduire.

    Mais cette technique ne fonctionnera qu'avec les INSERT, pas les UPDATE...
    1. totu dépend de ta base de données, si c'est Oracle, cherche du coté des mots clé : NEW, OLD
      du genre

      CREATE TRIGGER maj
      AFTER INSERT ON ods_order,ods-order_detail
      BEGIN
      INSERT INTO dwh_ventes NEW:id, NEW:texte ;
      END maj;
      1. Oui c'est Oracle,

        mais à quoi correspondent les attributs "id" et "texte" ??
        1. A tes champs de tes tables.
      2. je suis dsl scalpweb mais je ne comprend pas ce que tu veux me dire !
        1. je suis dsl scalpweb mais je ne comprend pas ce que tu veux me dire !

          En effet je ne vais pas rentrer ligne par ligne
          1. Non, c'est moi qui suis désolé , j'avais saisi ta question de travers, je l'avais lu trop vite.

            Pour les id et texte, je pense qu'ils sont censés faire références au champ de tes tables.
        2. Quelle est la différence entre "id" et "text" ?
          1. Ca on le sait pas nous !

            Ca dépend du contenu de ta table ! Il faut que tu les remplaces par le nom de tes champs...
          2. @Scalpweboui je me suis mal exprimé, j'aurais dû marquer:
            NEW:champs1 , NEW:Champs2 etc....