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 :

PLS-00103: Encountered the symbol "EMBAUCHE" when expecting one of the following:


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2019
    Messages : 7
    Par défaut PLS-00103: Encountered the symbol "EMBAUCHE" when expecting one of the following:
    Bonjour tous le monde
    moi même j'ai eu cette erreur en compliant un trigger si quelqu'un peut m'aider voici le code:

    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
    CREATE OR REPLACE TRIGGER HR.InterdictInsert
    BEFORE INSERT OR UPDATE ON HR.EMPLOYEES
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    BEGIN
    	IF (:NEW.hire_date) >= sysdate then 
    	RAISE_APPLICATION_ERROR ( -20550, 'la date d'embauche est supérieur à la date système ' );
    	END IF;
    END;
    /
    et voici le code erreur:
    SQL> show error
    Erreurs pour TRIGGER HR.INTERDICTINSERT :
     
    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    3/47     PLS-00103: Encountered the symbol "EMBAUCHE" when expecting one
             of the following:
             ) , * & = - + < / > at in is mod remainder not rem =>
             <an exponent (**)> <> or != or ~= >= <= <> and or like like2
             like4 likec between || multiset member submultiset
    merci et bientôt.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 134
    Par défaut
    C'est juste un problème d'apostrophe dans une chaine de caractères.
    D'ailleurs= la coloration syntaxique du code met bien en évidence la source de l'erreur.

    Pour rappel, à l'intérieur d'une chaine de caractères l’apostrophe doit être doublée pour être reconnue comme un caractère et non le caractère d'encadrement de chaine.
    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
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2019
    Messages : 7
    Par défaut
    Bonjour
    merci de votre réponse
    mais même en ajoutant ce simple côte dans le code le même message apparaît:

    Erreur(3,35): PLS-00103: Symbole "‘" rencontré à la place d'un des symboles suivants : ( - + case mod new not null <identificateur> <identificateur entre guillemets> <variable attachée> continue avg count current exists max min prior sql stddev sum variance execute forall merge time timestamp interval date <un littéral de chaîne avec spécification de jeu de caractères> <un nombre> <une chaîne SQL entre apostrophes> pipe <constante de chaîne éventuellement entre guillemets avec indication du jeu

    merci de votre aide.

  4. #4
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Citation Envoyé par mouhyeddineamine Voir le message
    Bonjour
    merci de votre réponse
    mais même en ajoutant ce simple côte dans le code le même message apparaît:
    Tu l'as placée où, la "simple quote" ?

    Ceci fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RAISE_APPLICATION_ERROR ( -20550, 'la date d''embauche est supérieure à la date système ' );

  5. #5
    Membre Expert Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Par défaut
    Sinon , on peut aussi utiliser la fonction q()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RAISE_APPLICATION_ERROR ( -20550, q'#la date d'embauche est supérieure à la date système#' );

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/02/2015, 13h28
  2. Erreur PLS-00103: Encountered the symbol "AND"
    Par kouette dans le forum PL/SQL
    Réponses: 10
    Dernier message: 30/05/2011, 19h53
  3. Réponses: 6
    Dernier message: 30/04/2009, 11h18
  4. erreur [PLS-00103: Symbole "=" rencontré ]
    Par zaineb.z dans le forum Débuter
    Réponses: 27
    Dernier message: 21/02/2008, 14h25
  5. PB Procédure SQL - Encountered the Symbol ""
    Par laetus dans le forum C++Builder
    Réponses: 6
    Dernier message: 07/01/2008, 19h45

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