Tom's Guide > Forum > Programmation > trigger sous oracle
Mot :    Pseudo :           
 

bonsoir,

je suis en train de faire quelques triggers sous oracle, mais j'ai un petit problème : peut on mettre des 'AND' dans les trigger ou pas ???
sans le AND ça à l'air de fonctionner, mais ça entraîne plusieurs fois les mêmes UPDATE

marche pas :

Code :
  1. CREATE OR REPLACE TRIGGER t_a_i_travailler
  2. AFTER INSERT OR DELETE OR UPDATE ON travailler
  3. FOR EACH ROW
  4. BEGIN
  5. IF INSERTING THEN
  6.   UPDATE projet p
  7.     SET p.nb_chercheurs = (p.nb_chercheurs + 1) AND
  8.         p.nb_jours = (p.nb_jours + :NEW.nb_jour_sem)
  9.   WHERE p.n_projet = :NEW.n_projet;
  10.   UPDATE chercheur c
  11.     SET c.nb_jours = (c.nb_jours + :NEW.nb_jour_sem)
  12.   WHERE c.n_chercheur = :NEW.n_chercheur;
  13. END IF;
  14. END;
  15. /



marche:

Code :
  1. CREATE OR REPLACE TRIGGER t_a_i_travailler
  2. AFTER INSERT OR DELETE OR UPDATE ON travailler
  3. FOR EACH ROW
  4. BEGIN
  5. IF INSERTING THEN
  6.   UPDATE projet p
  7.     SET p.nb_chercheurs = (p.nb_chercheurs + 1)
  8.   WHERE p.n_projet = :NEW.n_projet;
  9.   UPDATE projet p
  10.     SET p.nb_jours = (p.nb_jours + :NEW.nb_jour_sem)
  11.   WHERE p.n_projet = :NEW.n_projet;
  12.   UPDATE chercheur c
  13.     SET c.nb_jours = (c.nb_jours + :NEW.nb_jour_sem)
  14.   WHERE c.n_chercheur = :NEW.n_chercheur;
  15. END IF;
  16. END;
  17. /

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

est-ce possible :

Code :
  1. UPDATE table
  2.   SET truc1 AND truc2
  3. WHERE machin;


bref, peut-on mettre un AND dans un UPDATE ??

Répondre à toms@IDN

de mémoire, le AND est relatif à la clause du WHERE, pour updater plusieurs valeurs faut utiliser des virgules :

http://www.laltruiste.com/document.php?url=http://www.laltruiste.com/courssql/cmd_update.html

Répondre à sylvain2

c nickel la virgule... :-D
merci beaucoup
depuis le temps que je cherche !

Répondre à toms@IDN
Tom's Guide > Forum > Programmation > trigger sous oracle
Aller à :

Il y a 1648 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens