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 :

probleme 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
    Décembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 22
    Par défaut probleme trigger
    salut

    voila le debut de mon code pour un trigger:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Create OR REPLACE trigger Liberer_emplacement
    After Insert
    On T_facture
    Declare
    	 Vnumfac T_facture.Num_facture%type;
    	 Vasquitee T_facture.ACQUITTEE%type;
    	 VNum_sejour T_sejour.Num_sejour%type;

    Voici l'erreur :

    6/34 PLS-00103: Symbole ":" rencontré à la place d'un des symboles
    suivants :
    := ( ; not null range default character
    Symbole "; inséré avant ":" pour continuer.

    Balise code ajoutées par Orafrance

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2004
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 81
    Par défaut
    d'apré le message d'erreur , votre erreur ne se trouve pas dans le début du trigger mais dans la suite , vous ne pouvé pas envoyer le code complet?
    (esseyer d'utilisé la balise CODE);

  3. #3
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    effectivement, c'est la 6° ligne APRES le DECLARE qui nous intéresse et c'est surement un problème de syntaxe... ouvrez les yeux

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 22
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    Create OR REPLACE trigger Liberer_emplacement
    After Insert
    On T_facture
    Declare
    	 Vnumfac T_facture.Num_facture%type;
    	 Vasquitee T_facture.ACQUITTEE%type;
    	 VNum_sejour T_sejour.Num_sejour%type;
    	 Vnum_est T_sejour.num_est%type;
    	 VCode_emp T_sejour.Code_emp%type:
    	 Vnum_facture T_sejour.num_facture%type;
    	 VDate_deb T_sejour.Date_deb%type;
    	 VDate_fin  T_sejour.Date_fin%type;
    	 VMontant_sejour T_sejour.Montant_sejour%type;
    	 VMontant_activite T_sejour.Montant_activite%type;
    	 VNum_periode T_periode_sejour.Num_periode%type;
    	 VNum_sejour T_periode_sejour.Num_sejour%type;
    	 VNB_JOURS T_periode_sejour.NB_JOURS%type;
    	 VNB_PERSONNES T_periode_sejour.NB_PERSONNES%type;
    	 VNB_ENFANTS T_periode_sejour.NB_ENFANTS%type;
    	 VNum_activite T_participer_activite.Num_activite%type;
    	 VNum_sejour T_participer_activite.Num_sejour%type;
    	 VNB_UNITE T_participer_activite.NB_UNITE%type;
    	 VDATE_ACTIVITE T_participer_activite.DATE_ACTIVITE%type;
    	 Cursor cursor1 is select Num_facture,ACQUITTEE  from Inserted;
    	 Cursor cursor2 is select Num_sejour,num_est, Code_emp,num_facture ,Date_deb ,Date_fin ,Montant_sejour,Montant_activite from T_sejour where num_facture = Vnumfac;
    	 Cursor cursor3 is select Num_periode,Num_sejour,NB_JOURS,NB_PERSONNES,NB_ENFANTS from T_periode_sejour where Num_sejour= VNum_sejour;
    	 Cursor cursor4 is select Num_activite,Num_sejour,NB_UNITE,DATE_ACTIVITE from T_participer_activite where Num_sejour= VNum_sejour;
    Begin
    	 Open cursor1;
    	 fetch cursor1 into Vnumfac, Vasquitee;
    	 if Vasquitee = false then
    		  close cursor1;
    		  open cursor2;
    		  fetch cursor2 into VNum_sejour,Vnum_est,VCode_emp,Vnum_facture,VDate_deb,VDate_fin,VMontant_sejour,VMontant_activite;
    		  close cursor2;
    		  Insert into HT_sejour(Num_sejour,num_est,Code_emp,num_facture,Date_deb,Date_fin,Montant_sejour,Montant_activite) values (VNum_sejour,Vnum_est,VCode_emp,Vnum_facture,VDate_deb,VDate_fin,VMontant_sejour,VMontant_activite);
    		  Delete from T_sejour where num_facture = Vnumfac;
    		  open cursor3;
    		  fetch cursor3 into VNum_periode,VNum_sejour,VNB_JOURS,VNB_PERSONNES,VNB_ENFANTS;
    		  close cursor3;
    		  Insert into hT_periode_sejour(Num_periode,Num_sejour,NB_JOURS,NB_PERSONNES,NB_ENFANTS) values (VNum_periode,VNum_sejour,VNB_JOURS,VNB_PERSONNES,VNB_ENFANTS);
    		  Delete from T_periode_sejour where  Num_sejour= VNum_sejour;
    		  open cursor4;
    		  fetch cursor4 into VNum_activite,VNum_sejour,VNB_UNITE,VDATE_ACTIVITE;
    		  close cursor4;
    		  Insert into HT_participer_activite(Num_activite,Num_sejour,NB_UNITE,DATE_ACTIVITE) values (VNum_activite,VNum_sejour,VNB_UNITE,VDATE_ACTIVITE);
    		  Delete from T_participer_activite where  Num_sejour= VNum_sejour;
    	 end if;
    end;
    /
    Balises code ajoutées par Orafrance

  5. #5
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Merci d'éditer votre message pour ajouter les balises code

  6. #6
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Merci de penser à utiliser les balises codes pour plus de lisibilité.
    L'erreur est à cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VCode_emp T_sejour.Code_emp%type:
    Remplacer le ":" par ";"

  7. #7
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    Citation Envoyé par orafrance
    effectivement, c'est la 6° ligne APRES le BEGIN qui nous intéresse et c'est surement un problème de syntaxe... ouvrez les yeux
    loupé... c'est la 6ème ligne après le DECLARE (y compris)... pas le Begin

    [Edité par Orafrance]

  8. #8
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2004
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 81
    Par défaut
    dans voptre code il existe une seule :

    vous avez fait une faute de frape au niveau de la declaratioin de la variable

    VCode_emp T_sejour.Code_emp%type il faut métre ; au lieu de :

  9. #9
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    A l'avenir, je vous prierai de bien vouloir tenir compte des remarques et de ne pas prendre le forum pour un deboggeur.

    Merci de lire ceci : http://club.developpez.com/regles/

  10. #10
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2004
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 81
    Par défaut
    esseyer juste de bien vérifier votre code; sinon vous passeré toute la journé à cherché ou ce trouve l'erreur

  11. #11
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Citation Envoyé par Yorglaa
    Citation Envoyé par orafrance
    effectivement, c'est la 6° ligne APRES le BEGIN qui nous intéresse et c'est surement un problème de syntaxe... ouvrez les yeux
    loupé... c'est la 6ème ligne après le DECLARE (y compris)... pas le Begin
    effectivement, j'ai fourchu... je m'en vais corriger immédiatement pour ne pas laisser cette ignominie

    PS : pour les balises je pense avoir été assez clair, j'édite ton message

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

Discussions similaires

  1. Probleme trigger-tables mutantes
    Par scariou29 dans le forum Administration
    Réponses: 2
    Dernier message: 17/11/2006, 17h13
  2. Problème trigger BEFORE UPDATE
    Par berceker united dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 30/08/2006, 16h55
  3. probleme trigger
    Par sanyugioh dans le forum Oracle
    Réponses: 3
    Dernier message: 13/04/2006, 15h46
  4. Probleme trigger mysql 5
    Par DarkMax dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 18/03/2006, 22h50
  5. Problem Trigger instead of
    Par bubi dans le forum Développement
    Réponses: 1
    Dernier message: 01/12/2005, 23h31

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