Précédent   Forum du club des développeurs et IT Pro > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 20/11/2012, 02h30   #1
ole1990
Invité de passage
 
Inscription : 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;
/
ole1990 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2012, 08h06   #2
ojo77
Membre Expert
 
Homme Olivier Joly
Support
Inscription : décembre 2010
Messages : 549
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 : 549
Points : 1 269
Points : 1 269
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
ojo77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2012, 12h41   #3
ole1990
Invité de passage
 
Inscription : 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;
/
ole1990 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/11/2012, 13h20   #4
skuatamad
Expert Confirmé
 
Inscription : août 2008
Messages : 1 690
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 690
Points : 2 812
Points : 2 812
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...
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h32.


 
 
 
 
Partenaires

Hébergement Web