+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Invité de passage
    Femme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mai 2012
    Messages : 13
    Points : 0
    Points
    0

    Par défaut Trigger avant insertion

    bonjour!
    voici un trigger qui permet de vérifier le département de chaque distributeur Avant ajout du client en Table:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    create or replace 
    TRIGGER  Insrt_dist
    BEFORE INSERT on DISTRIBUTEURS
    for each row
    declare
    dept_exception EXCEPTION;
    begin
     
    --CONTRAINT SUR LE DEPARTEMENT
    IF :NEW.DEPARTEMENT!='RHONE' THEN
    RAISE dept_exception;
    END IF;
     
    EXCEPTION
    WHEN dept_exception THEN 
    RAISE_APPLICATION_ERROR(-20501, 'insertion impossible : le distributeur n"habite pas au département du rhone ');
     
    END;
    la procédure d'ajout est :

    Code :
    1
    2
    3
    4
    5
    6
    create or replace 
    procedure ajout_distributeur(id integer,Comune varchar2,ville varchar2,num integer,codeP integer,DEPARTEMENT varchar2)is
    Begin
    insert into distributeurs VALUES (id,Comune,ville,num,codeP,DEPARTEMENT);
    dbms_output.put_line('distributeur ajouter !');
    end;
    son exécution me donne des erreurs comme suit

    Erreur commençant à la ligne 1 de la commande :
    Begin
    ajout_distributeur(8,'Aigueperse','LYON',0876543218,69800 ,'AIN');
    End;
    Rapport d'erreur :
    ORA-20501: insertion impossible : le distributeur n"habite pas au departement du rhone
    ORA-06512: à "M132.INSRT_DIST", ligne 15
    ORA-04088: erreur lors d'exécution du déclencheur 'M132.INSRT_DIST'
    ORA-06512: à "M132.AJOUT_DISTRIBUTEUR", ligne 3
    ORA-06512: à ligne 2
    Quelqu'un pourrait m'aider svp!! je suis débutante
    merci d'avance

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro Alain
    Ingénieur d'études décisionnel
    Inscrit en
    mai 2002
    Messages
    5 672
    Détails du profil
    Informations personnelles :
    Nom : Homme Alain
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 5 672
    Points : 14 585
    Points
    14 585

    Par défaut

    Où est ton problème ?
    Ce trigger fait exactement ce qu'on lui demande et déclenche une exception lorsque la colonne département de la ligne qu'on tente d'insérer ne prend pas la valeur 'RHONE'.
    Qu'attendais-tu d'autre ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Invité de passage
    Femme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mai 2012
    Messages : 13
    Points : 0
    Points
    0

    Par défaut

    lol!
    desolé jpenssais que y'avait une erreur dans le code vue qu'a chaque fois il m'affichait le rapport d'erreur,

    un grand merci pour votre reponse,
    Cordialement

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •