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

PL/SQL Oracle Discussion :

Erreur lors de la création d'un trigger


Sujet :

PL/SQL Oracle

  1. #1
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 44
    Par défaut Erreur lors de la création d'un trigger
    Bonjour,

    J'ai le code suivant
    CREATE Or REPLACE TRIGGER StartScript
    after DELETE On OP_ScenarioLocks For Each ROW
    Begin
    insert into ODS_OpImportWFSUnits
    (flag, unit)
    values
    (1,old.unit)
    End;

    et les erreurs suivantes :

    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    2/5 PL/SQL: SQL Statement ignored
    6/2 PL/SQL: ORA-00933: SQL command not properly ended
    6/5 PLS-00103: Encountered the symbol "end-of-file" when expecting
    one of the following:
    begin case declare end exception exit for goto if loop mod
    null pragma raise return select update while with
    <identificateur> <identificateur entre guillemets>
    <variable bind> << close current delete fetch lock insert
    open rollback savepoint set sql execute commit forall merge
    pipe


    Avez-vous une idée?
    Je n'arrive pas à trouver la reponse.

    MERCI à vous tous.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 9
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE Or REPLACE TRIGGER StartScript
    after DELETE On OP_ScenarioLocks For Each ROW
    Begin
      insert into ODS_OpImportWFSUnits
        (flag, unit)
      values
        (1,old.unit)
    End;
    Pas de point-virgule à la fin de l'instruction INSERT.
    Quand tu vois l'erreur PLS-00103, c'est un mot-clef, le plus souvent un point-virgule, qui manque.

  3. #3
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 44
    Par défaut Merci, mais nouveau message d'erreur
    LINE/COL ERROR
    -------- --------------------------------------------
    2/4 PL/SQL: SQL Statement ignored
    5/11 PL/SQL: ORA-00984: column not allowed here

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 9
    Par défaut
    Essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE OR REPLACE TRIGGER StartScript
    after DELETE ON OP_ScenarioLocks FOR Each ROW
    Begin
      INSERT INTO ODS_OpImportWFSUnits
        (flag, unit)
      VALUES
        (1,:old.unit);
    End;
    Il faut écrire :old.

  5. #5
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 44
    Par défaut
    Merci,

    j'ai déjà essayé mais avec le messa
    LINE/COL ERROR
    -------- ----------------------------------------------------
    5/8 PLS-00049: bad bind variable 'OLD.UNIT'

  6. #6
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 44
    Par défaut Merci, mais nouveau message d'erreur
    Merci,

    j'ai déjà essayé mais avec le message d'erreur suivant:


    LINE/COL ERROR
    -------- ----------------------------------------------------
    5/8 PLS-00049: bad bind variable 'OLD.UNIT'

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 9
    Par défaut
    Ca semble vouloir dire que la colonne UNIT n'existe pas dans la table OP_ScenarioLocks.
    Si tu donnes plus d'informations sur tes deux tables, ça sera peut-être plus facile à corriger

  8. #8
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 44
    Par défaut Merci, ça fonctionne
    Merci,

    Je me suis trompé sur le nom de la colonne.

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

Discussions similaires

  1. erreur lors de la création trigger mysql
    Par risfox dans le forum Requêtes
    Réponses: 2
    Dernier message: 25/09/2011, 11h42
  2. Erreur lors de la création d'un trigger
    Par max72100 dans le forum SQL Procédural
    Réponses: 12
    Dernier message: 26/06/2008, 14h15
  3. Réponses: 4
    Dernier message: 23/05/2006, 17h04
  4. message d'erreur lors de la création de la base
    Par ber_jp dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 20/05/2004, 12h15
  5. message d'erreur lors de la création d'une base
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 16/04/2004, 15h47

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