Bonjour,
J'ai une procédure stockée dans laquelle j'utilise Execute immediate :
Je souhaite récupérer la valeur de nsiret dans ma variable lv_nsiret.
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
24
25
26
27
28
29
30 lv_sql_stmt := 'SELECT nsiret FROM dpa_marche_hist_acompte WHERE idenos = :1 '; IF Ora_nomht1 IS NULL THEN lv_where1 := ' AND nomht1 IS NULL'; ELSE lv_where1 := ' AND nomht1 = :2'; END IF; IF Ora_nomhl1 IS NULL THEN lv_where2 := ' AND nomhl1 IS NULL'; ELSE lv_where2 := ' AND nomhl1 = :3'; END IF; IF Ora_nstra IS NULL THEN lv_where3 := ' AND nstra IS NULL'; ELSE lv_where3 := ' AND nstra = :4'; END IF; IF Ora_eaetex IS NULL THEN lv_where4 := ' AND eaetex IS NULL'; ELSE lv_where4 := ' AND eaetex = :5'; END IF; IF Ora_dexemm IS NULL THEN lv_where5 := ' AND dexemm IS NULL;'; ELSE lv_where5 := ' AND dexemm = :6;'; END IF; lv_sql_stmt := lv_sql_stmt||lv_where1||lv_where2||lv_where3||lv_where4||lv_where5; EXECUTE IMMEDIATE lv_sql_stmt USING Ora_idenos,Ora_nomht1,Ora_nomhl1,Ora_nstra,Ora_eaetex,Ora_dexemm RETURNING lv_nsiret;
Est-ce que la syntaxe de mon execute immediate est correcte?
J'ai le message d'erreur suivant :
LINE/COL ERROR
-------- -------------------------------------------------------------
134/115 PLS-00103: Symbole "LV_NSIRET" rencontrÚ Ó la place d'un des
symboles suivants :
into
Symbole "into" a ÚtÚ substituÚ Ó "LV_NSIRET" pour continuer.
Partager