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 Firebird Discussion :

creation de trigger


Sujet :

SQL Firebird

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut creation de trigger
    bonjour,

    ma table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE "COURRIER" 
    (
      "ACTION_NO"         NUMERIC(18, 0) NOT NULL,
      "DOC_NO"            NUMERIC(18, 0) NOT NULL,
      "UTIL_NO"           NUMERIC(18, 0) NOT NULL,
      "COURRIER_CONSULTE" "BOOL"         NOT NULL,
      "DATE_BUTOIR"       NUMERIC(14, 12),
      "COMMENTAIRE"       VARCHAR(256),
      "REPONSE"           VARCHAR(256),
      "DATE_CONSULTATION" NUMERIC(14, 12),
    CONSTRAINT "PK_COURRIER1" PRIMARY KEY ("ACTION_NO")
    );
    ALTER TABLE "COURRIER" ADD CONSTRAINT "FK_COURRIER1" FOREIGN KEY ("DOC_NO") REFERENCES DOCUMENT ("DOC_NO") ON DELETE CASCADE;
    ALTER TABLE "COURRIER" ADD CONSTRAINT "FK_COURRIER2" FOREIGN KEY ("UTIL_NO") REFERENCES UTILISATEUR ("UTIL_NO") ON DELETE CASCADE;
    apres avoir au préalable déclare un générateur Courrier_action_no_INC3,

    je lance la commande SQL:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TRIGGER SET_COURRIER_ACTION_NO FOR COURRIER
    ACTIVE BEFORE INSERT POSITION 0
    AS
    BEGIN
      IF (NEW.action_no IS NULL) THEN NEW.action_no = GEN_ID(Courrier_action_no_INC3, 1);
    END

    et là j'ai une erreur SQL :

    Dynamic SQL Error
    SQL error code = -104
    Unexpected end of command
    Statement: CREATE TRIGGER SET_COURRIER_ACTION_NO FOR COURRIER
    ACTIVE BEFORE INSERT POSITION 0
    AS
    BEGIN
    IF (NEW.action_no IS NULL) THEN NEW.action_no = GEN_ID(Courrier_action_no_INC3, 1)



    Je débute dans les Trigger, j'ai repris des syntaxes sur les forums, ca ne doit pas être bien méchant, mais je ne vois pas du tout ce qui ne vas pas!

    merci

  2. #2
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 70
    Points : 84
    Points
    84
    Par défaut
    Pour créer un procédure, tu dois changer le terme ; par un autre. La console lis ; et veux terminer la procédure à la ligne du if, mais c'est seulement pour terminer une ligne. Alors pour changer le terme tu peux faire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SET TERM ; !
     
    ta procédure stockéee ici
     
    SET TERM ! ;
    Quand la console va lire ; de ta ligne du if, il ne cherchera pas à terminer la procédure mais va seulement lire la fin d'une ligne.


    Voilà

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    ok merci ça marche, mais dis donc, ça s'invente pas ce truc là !!!!

  4. #4
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 70
    Points : 84
    Points
    84
    Par défaut
    Apparament...

    Pense à mettre résolu

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

Discussions similaires

  1. [oracle][php]creation de trigger
    Par guittonews dans le forum PL/SQL
    Réponses: 6
    Dernier message: 06/12/2007, 11h10
  2. Probleme de creation de trigger
    Par Cartman.inc dans le forum PL/SQL
    Réponses: 1
    Dernier message: 20/06/2007, 11h11
  3. creation de trigger
    Par freestyler dans le forum Administration
    Réponses: 40
    Dernier message: 12/12/2006, 09h57
  4. [PHP5.2][MySQL5.0.27] Creation de triggers depuis PHP
    Par frochard dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 05/12/2006, 10h16
  5. [PL/SQL] Creation de triggers dans transaction
    Par globeriding dans le forum Oracle
    Réponses: 15
    Dernier message: 07/02/2006, 11h33

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