EXECUTE IMMEDIATE : erreur "missing coma"
Bien le Bonsoir à tous,
j'exécute une procédure stockée contenant un curseur.
L'objectif pour moi est de faire un INSERT dans une table partitionnée.
J'ai donc paramétré ma procédure de sorte à pouvoir definir le mois et l'année de la partition, j'utilise pour cela EXECUTE IMMEDIATE mais j'ai le message d'erreur suivant:
Citation:
ORA-00917: missing comma
ORA-06512: at "DEBLOCAGE_NUX_PARAMETRE", line 39
ORA-06512: at line 1
Ci-dessous le bout de code:
Citation:
CREATE OR REPLACE PROCEDURE DEBLOCAGE_NUX_PARAMETRE (Mois_partition varchar2,An_partition varchar2) is
....
begin
open CUR_COMMAND_STRING;
loop
fetch CUR_COMMAND_STRING into VAR_CUR_COMMAND_STRING;
exit when CUR_COMMAND_STRING%NOTFOUND;
select (BSA_TRN_SEQ.NEXTVAL) into SEQ from dual;
CMD:='TRANID='||SEQ||',DESTNO=3,DESTYP=IN,EVTCODE=UNLOCK,MSISDN='||VAR_CUR_COMMAND_STRING.CDEC||',';
part_str:='insert into BIL.BSA_TRANSACTIONS PARTITION(BSA_TRANS_'||Mois_partition||'_'||An_partition||')
(TRANSACTION_ID,REPLY_DATE,STATUS,COMMAND_STRING,PRIORITY,CREATE_DATE,EVENT_CODE)
values ('||SEQ||',sysdate,1,'||CMD||',1,sysdate,UNLOCK)';
execute immediate part_str;
MErci d'avance pour votre précieuse aide.