Bonjour,
J'arrive à créer correctement la procédure stockée suivante :
Mais à l'exécution avec une variable alphanumérique :
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 CREATE OR REPLACE PROCEDURE PH_SEQ5 ( MyPeriode CHAR ) IS -- Déclaration variables locales stSql VARCHAR2(3000); BEGIN stSql:='CREATE OR REPLACE VIEW PH_VUE_TEMP AS SELECT * FROM PH_EMI_AG WHERE TRTPER_PNU='||MyPeriode; EXECUTE IMMEDIATE (stSql); END; /
J'obtiens l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part CALL PH_SEQ5('2012H38');
Si j'exécute le code suivant ça marche :CALL PH_SEQ5('2012H38')
Error at line 33
ORA-00933: SQL command not properly ended
ORA-06512: at "A263.PH_SEQ5", line 17Dans la table PH_EMI_AG, le champ TRTPER_PNU est de type VARCHAR2(7).
Code : Sélectionner tout - Visualiser dans une fenêtre à part CALL PH_SEQ5(4);
J'ai essayé différentes combinaisons avec les quotes sans succès.
Si quelqu'un a une idée, je suis preneur.
Merci.
Partager