MAJ deux tables sous oracle

dev_man Messages postés 83 Date d'inscription   Statut Membre Dernière intervention   -  
DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai deux table et je voudrais faire la mise à jour sur deux colonnes sur deux table en un seul coup, est-il possible sous oracle 10g.

merci et bonne journée.


A voir également:

2 réponses

DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
 
Hello,

tu peux utiliser un
Trigger After Update
sur la table A qui déclenchera la mise à jour sur la Table B par exemple.


DROE
0
A.Nonymous
 
UPDATE table1
INNER JOIN table2 ON table1.champA = table2.champB
SET
table1.champC = '6',
table2.champD = '66'
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Salut,

Je pense que cette syntaxe n'existe pas sur oracle.

Par ailleurs le trigger after update a lui des limites. On ne peut utiliser que des valeurs (anciennes ou nouvelles) présentes dans la table A.

cdlt
0
DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
 
avec les :NEW tu peux faire un

update table B set col1=:NEWxxxxx, col2 =:NEWxxxx
where col3=:NEWxxxxxx

je me trompe?

droe
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Oui mais il faut prendre des valeurs déjà présentes dans la table A (:new ou :old). On ne peut pas avoir une valeur comme dans l'exemple avec inner join :

table1.champC = '6',
table2.champD = '66'
0
DROE Messages postés 148 Date d'inscription   Statut Membre Dernière intervention   48
 
oui oui, si la demande est de faire une mise à jour sur deux colonnes sur deux tables en un seul coup avec des valeurs différentes effectivement.
0