Bonjour,
Je débute en PL/SQL, et j'aimerais mettre en place une procédure qui prend en paramètre une chaine de caractère. Mais ça ne fonctionne pas et je n'ai aucune idée pour debugger. Je vous remercie de votre aide
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 SET SERVEROUTPUT ON CREATE PROCEDURE maj_vente(jobi in varchar2(20)) is Nom1 varchar2(20); Prenom1 varchar2(20); begin select FIRST_NAME into Nom1, LAST_NAME into Prenom1 from hr.EMPLOYEES where JOB_ID=jobi; dbms_output.put_line('Nom et prenom correspondant à ce JOD_ID est :' || Nom1|| '-->'|| Prenom1); EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('Nom et prenom correspondant à ce JOD_ID est :'); WHEN TO_MANY_ROW THEN dbms_output.put_line('il y a plusieurs lignes'); END; / EXECUTE maj_vente('IT_PROG');
Voici la log
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 select FIRST_NAME into Nom1, LAST_NAME into Prenom1 from hr.EMPLOYEES where JOB_ID=jobi; dbms_output.put_line('Nom et prenom correspondant à ce JOD_ID est :' || Nom1|| '-->'|| Prenom1); EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('Nom et prenom correspondant à ce JOD_ID est :'); WHEN TO_MANY_ROW THEN dbms_output.put_line('il y a plusieurs lignes'); END; Rapport d'erreur : ORA-00955: name is already used by an existing object 00955. 00000 - "name is already used by an existing object" *Cause: *Action: Erreur commençant à la ligne 19 de la commande : EXECUTE maj_vente('IT_PROG') Rapport d'erreur : ORA-06550: line 1, column 8: PLS-00905: object SYSTEM.MAJ_VENTE is invalid ORA-06550: line 1, column 8: PL/SQL: Statement ignored 06550. 00000 - "line %s, column %s:\n%s" *Cause: Usually a PL/SQL compilation error. *Action:
Partager