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

Firebird Discussion :

Pbm trigger before Delete


Sujet :

Firebird

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Par défaut Pbm trigger before Delete
    Bonsoir,

    J'ai placé un trigger Before delete d'une table ENT_PV comme ceci :

    DELETE FROM DET_PV WHERE ID_PV=ID_PV ;

    ou DET_PV contient les enregistrements détails de ENT_PV avec comme clé commune ID_PV

    Quand j'exécute un Delete sélectif sur la table ENT_PV, le trigger supprime tous les enregistrements de DET_PV !

    Une idée ??

    D7, FB 2.0, XP SP2

    Merci.

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant spécialité Firebird
    Inscrit en
    Mai 2002
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant spécialité Firebird
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 342
    Par défaut
    déjà une contrainte de clé étrangère fait très bien cela pour toi

    mais si tu tiens à réinventer la roue, ce serait plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DELETE FROM DET_PV WHERE ID_PV=old.ID_PV ;

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Par défaut
    D'accord avec toi pour la roue !

    Mais pour la solution que tu m'as proposée, j'ai le message suivant :

    Column does not belong to referenced table.
    Dynamic SQL Error.
    SQL error code = -206.
    Column unknown.
    OLD.ID_PV.
    Une idée !

  4. #4
    Membre Expert

    Homme Profil pro
    Consultant spécialité Firebird
    Inscrit en
    Mai 2002
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant spécialité Firebird
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 342
    Par défaut
    non

    vérifie les noms de champs et l'écriture de trigger

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Par défaut
    Oui, pardon ! La case cochée était celle de l'INSERT !


    Pour la contrainte de clé étrangère, mon outil d'administration me demande un index unique sur la table détail que je ne peux pas avoir. La clé commune se répète dans cette dernière.
    Mes 2 tables sont style Entête et détails de facture :
    1 ID_PV dans ENT_PV et 1 à n ID_PV's dans DET_PV.


    Merci.

  6. #6
    Membre Expert

    Homme Profil pro
    Consultant spécialité Firebird
    Inscrit en
    Mai 2002
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant spécialité Firebird
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 342
    Par défaut
    Citation Envoyé par akli_agha Voir le message
    Pour la contrainte de clé étrangère, mon outil d'administration me demande un index unique sur la table détail que je ne peux pas avoir
    ???
    c'est un grand classique pourtant , tu devrais lire un peu de doc sur les sgbdr

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

Discussions similaires

  1. Fatal Error : Trigger Before Delete
    Par BLJ.CHAUVIN dans le forum SQL Procédural
    Réponses: 13
    Dernier message: 08/09/2011, 10h39
  2. Pb avec Trigger before delete : ORA-04091
    Par nloubes dans le forum Oracle
    Réponses: 1
    Dernier message: 22/10/2009, 14h34
  3. Erreurs sur un trigger BEFORE DELETE
    Par Daikyo dans le forum PL/SQL
    Réponses: 1
    Dernier message: 13/06/2008, 02h13
  4. [8i] Trigger before ou after delete
    Par Débéa dans le forum Oracle
    Réponses: 3
    Dernier message: 15/02/2006, 13h49
  5. Créer un trigger "before insert" avec SQL Server
    Par bubi dans le forum Développement
    Réponses: 2
    Dernier message: 14/11/2005, 10h12

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