Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité de passage
    Inscrit en
    novembre 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : novembre 2010
    Messages : 8
    Points : 0
    Points
    0

    Par défaut Fonction erreur "set SERVEROUTPUT on"

    Bonsoir,
    J'ai une erreur dans le script suivant. l'erreur m'est indiquée:

    Error(2,1): PLS-00103: Encountered the symbol "SET" when expecting one of the following: ; is with authid as cluster order using external deterministic parallel_enable pipelined

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    CREATE OR REPLACE procedure EmpNaoEntregue (code_funcionario IN funcionario.cod_func%type)
    SET SERVEROUTPUT ON
    declare
      texto char(25);
    begin
      SELECT artigo_roupa.design INTO texto
      FROM funcionario,encomendas, artigo_roupa, linha_encomenda
      WHERE funcionario.cod_func = encomendas.cod_func
      AND encomendas.cod_encomenda = linha_encomenda.cod_encomenda
      AND linha_encomenda.cod_artigo = artigo_roupa.cod_artigo
      AND linha_encomenda.estado_enc LIKE '0'
      AND funcionario.cod_func = code_funcionario;
      dbms_output.put_line(texto);
    end;
    /

  2. #2
    Membre Expert
    Homme Profil pro Olivier Joly
    Support
    Inscrit en
    décembre 2010
    Messages
    585
    Détails du profil
    Informations personnelles :
    Nom : Homme Olivier Joly
    Âge : 39
    Localisation : France, Seine et Marne (Île de France)

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

    Informations forums :
    Inscription : décembre 2010
    Messages : 585
    Points : 1 361
    Points
    1 361

    Par défaut

    Bonjour,

    L'instruction "set serveroutput on" ne peut pas faire partie d'une procédure.

    En PL/SQL c'est au package dbms_ouput et notemment à sa fonction enable qu'il faut se référer.

    Plus d'infos dans ce tuto : http://sheikyerbouti.developpez.com/pl_sql/?page=Chap7

  3. #3
    Invité de passage
    Inscrit en
    novembre 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : novembre 2010
    Messages : 8
    Points : 0
    Points
    0

    Par défaut Re

    Merci pour ta réponce,
    maintenant il me dit que j'ai une erreur dans mon declar et qui lui faut le symbole de "end-of-file"

    Error(2,1): PLS-00103: Encountered the symbol "DECLARE" when expecting one of the following: ; is with authid as cluster order using external deterministic parallel_enable pipelined

    Error(13,4): PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: begin case declare end exception exit for goto if loop mod null pragma raise return select update while with <an identifier> <a double-quoted delimited-identifier> <a bind variable> << close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge <a single-quoted SQL string> pipe <an alternatively-quoted SQL string>

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    CREATE OR REPLACE procedure EmpNaoEntregue (PN$code_funcionario IN funcionario.cod_func%type)
    declare
      texto varchar(1000);
    begin
      SELECT artigo_roupa.design INTO texto
      FROM funcionario,encomendas, artigo_roupa, linha_encomenda
      WHERE funcionario.cod_func = encomendas.cod_func
      AND encomendas.cod_encomenda = linha_encomenda.cod_encomenda
      AND linha_encomenda.cod_artigo = artigo_roupa.cod_artigo
      AND linha_encomenda.estado_enc LIKE '0'
      AND funcionario.cod_func = PN$code_funcionario;
      dbms_output.put_line(texto);
    end;
    /

  4. #4
    Expert Confirmé
    Inscrit en
    août 2008
    Messages
    2 091
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 2 091
    Points : 3 644
    Points
    3 644

    Par défaut

    Pas besoin de DECLARE, c'est IS ou AS.
    Le guide PL/SQL du site est très bien pour débuter :
    Procédures, Fonctions et paquetages
    Je mets également le lien pour le SELECT INTO au cas...

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
  •