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

SQL Oracle Discussion :

Trigger compilé avec des erreurs


Sujet :

SQL Oracle

  1. #1
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    483
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2007
    Messages : 483
    Points : 234
    Points
    234
    Par défaut Trigger compilé avec des erreurs
    Bonjour,

    Voila j'essaye de créer un trigger qui se déclencherait avant un delete dans une de mes tables, mais celui-ci se compile avec des erreurs.

    Voici tout d'abord les deux tables concernées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    CREATE TABLE Applications
    (
    	id number,
    	name varchar(20),
    	slaId number,
    	networkId number,
    	CONSTRAINT pk_applications primary key(id),
    	CONSTRAINT fk_app_sla foreign key(slaId) references sla(id),
    	CONSTRAINT fk_app_network foreign key(networkId) references networks(id)
    );
     
    CREATE TABLE Sla
    (
    	id number,
    	name varchar(20),
    	(autres champs ... )
    );
    Et voici mon trigger :
    Il doit effacer la valeur du champ "slaId" dans la table "applications" sur les applications concernées lorsque le sla qui lui était attribué est effacé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    CREATE OR REPLACE TRIGGER TRG_REMOVE_slaId
    	BEFORE DELETE ON Sla
    	REFERENCING OLD AS old
    	FOR EACH ROW
    	BEGIN
    		UPDATE Applications SET slaId='' WHERE slaId=:old.id;
    	END
    /
    Mais il se compile avec une erreur et je ne vois pas pourquoi...

    Voyez vous quelque chose qui cloche ?

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de fatsora
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 103
    Points : 1 332
    Points
    1 332
    Par défaut
    Bonour,

    Il manque un ";" au code du trigger ....

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
      1  CREATE OR REPLACE TRIGGER TRG_REMOVE_slaId
      2     BEFORE DELETE ON Sla
      3     REFERENCING OLD AS old
      4     FOR EACH ROW
      5     BEGIN
      6             UPDATE Applications SET slaId='' WHERE slaId=:old.id;
      7*    END;
    > /
     
    Trigger created.
     
    >

  3. #3
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    483
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Avril 2007
    Messages : 483
    Points : 234
    Points
    234
    Par défaut
    Erreur bête, j'ai oublié le ; après le END (j'en ai profité pour apprendre à me servir de la commande SHOW ERROR ! )

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/05/2011, 15h13
  2. [PL/SQL]Procédure qui se compile avec des erreurs
    Par yoann7 dans le forum PL/SQL
    Réponses: 12
    Dernier message: 17/03/2009, 11h09
  3. [Maven] Compilation avec des librairies
    Par pamic dans le forum Maven
    Réponses: 3
    Dernier message: 03/07/2006, 11h29
  4. compilation avec gcc: erreur inhabituelle
    Par artatum dans le forum C
    Réponses: 4
    Dernier message: 12/10/2005, 17h13
  5. compilation avec gcc : erreurs bizard !!!
    Par CodeurNé dans le forum C
    Réponses: 2
    Dernier message: 23/09/2005, 18h09

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