Salut tout le monde,
J'ai le script suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
SET SERVEROUTPUT ON;
SET ECHO OFF;
DECLARE
CURSOR c_liste_dept IS SELECT department_id FROM hr.departments WHERE department_id < 100;
CURSOR c_liste_emp (dept_id NUMBER(6)) 
	      IS SELECT last_name, job_id, hire_date, salary 
          FROM hr.employees 
		  WHERE department_id = dept_id AND employee_id < 120;
r_info_emp c_liste_emp%ROWTYPE;
 
BEGIN
...
END;
Qui ne s'exécute pas.. Le message d'erreur est le suivant :
SET SERVEROUTPUT ON;
SET ECHO OFF;
ORA-06550: Ligne 3, colonne 35 :
PLS-00103: Symbole "(" rencontré à la place d'un des symboles suivants :

:= . ) , @ % default character
Symbole ":=" a été substitué à "(" pour continuer.
Par contre si je remplace la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
CURSOR c_liste_emp (dept_id NUMBER(6))
Par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
CURSOR c_liste_emp (dept_id NUMBER)
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
CURSOR c_liste_emp (dept_id hr.departments.department_id%TYPE)
Tout marche bien..!!
Et pourtant le type de ma colonne hr.departments.department_id est bien NUMBER(6).

Vous avez une idée sur la source du problème :

Merci d'avance