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

Oracle Discussion :

Problème de trigger


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut Problème de trigger
    Bonjour à tous, ceci est mon premier post sur le forum

    Alors voila j'ai un problème avec un trigger que j'essais de créé donc voici mon code de création :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE or replace TRIGGER TRIGGER_TEST
    AFTER INSERT ON owbrtlabo.dest_calendrier1
    FOR EACH ROW
    begin
    insert into archives.Dest_calendrier values(:new.dest_ferme,:new.dest_libelle);
    end;
    En fait, j'ai une edit Dest_calendrier dans le schéma owbrtlabo et dans le schéma archives et je voudrais lorsqu'il y a une insertion dans owbrtlabo que cette insertion soit répeter dans archives. Je pensais que mon trigger le ferait mais j'ia des erreur de compilation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    2/1      PLS-00201: l'identificateur 'DEST_CALENDRIER' doit être déclaré
    2/1      PL/SQL: SQL Statement ignored
    Je pense que c'est une erreur bête car ceci est mon premier trigger merci de votre attention et bonne journée.



    Edit : En fait je vien d'avoir un autre problème sur ce trigger et ej ne comprend pas pourquoi... Mon trigger est correct ( pas d'erreur de compilation ) mais lorsque j'ajoute une donnée dans ma table j'ai une erreur qui dit :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SQL> insert into dest_calendrier values ('14/12/1982','Anniv cop chris');
    insert into dest_calendrier values ('14/12/1982','Anniv cop chris')
                *
    ERREUR à la ligne 1 :
    ORA-04098: Déclencheur  'ARCHIVES.TEST_TRIG' non valide. Echec de la
    revalidation

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Vérifiez que l'utilisateur owbrtlabo a bien le droit de faire un insert dans la table archives.Dest_calendrier.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    Oui je lui ai deja attribuer les droits. Le problème ne vient donc pas de là.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2006
    Messages : 133
    Par défaut
    Ton erreur est bizarre ...


    En testant , ça marche :
    conn a/a@test
    create table t1 (n varchar2(1));
    grant insert on t1 to b;

    conn b/b@test
    create table t2(n varchar2(1));

    CREATE or replace TRIGGER TRIGGER_TEST
    AFTER INSERT ON b.T2
    FOR EACH ROW
    begin
    insert into a.t1 values(:new.n);
    end;
    /

    insert into t2 values ('1');
    commit;
    select count(*) from a.t1;

    ==> 1 ligne ...

    Est-ce que ta table archives.Dest_calendrier existe vraiment ??
    vérifie l'orthographe ..

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    Bon le problème est résolut... J'avais donnée les droits ARCHIVE > OWBRTLABO au lieu de ARCHIVE < OWBRTLABO

    Merci de votre aide

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 21
    Par défaut
    En fait je vien d'avoir un autre problème sur ce trigger et ej ne comprend pas pourquoi... Mon trigger est correct ( pas d'erreur de compilation ) mais lorsque j'ajoute une donnée dans ma table j'ai une erreur qui dit :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SQL> insert into dest_calendrier values ('14/12/1982','Anniv cop chris');
    insert into dest_calendrier values ('14/12/1982','Anniv cop chris')
                *
    ERREUR à la ligne 1 :
    ORA-04098: Déclencheur  'ARCHIVES.TEST_TRIG' non valide. Echec de la
    revalidation

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

Discussions similaires

  1. PL/SQL problème sur Trigger
    Par kitsune dans le forum PL/SQL
    Réponses: 4
    Dernier message: 06/12/2005, 20h35
  2. [9i] problème avec trigger after logon
    Par Michael# dans le forum Oracle
    Réponses: 2
    Dernier message: 17/03/2005, 12h14
  3. [Interbase6] Problème de triggers
    Par emeraudes dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2005, 09h52
  4. [SQLPLUS] - Problème de Triggers Java
    Par farcis dans le forum Oracle
    Réponses: 7
    Dernier message: 23/12/2004, 09h21
  5. [PL/SQL] problème de trigger
    Par Chuck67 dans le forum Oracle
    Réponses: 14
    Dernier message: 09/12/2004, 23h17

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