下面的代碼在大多數情況下工作正常。 它炸燬時LIB_SEGCO有任何單引號 如ABC'DEFORA-00917在sql查詢中轉義撇號
在這種情況下,它提供了錯誤ORA-00917:缺少逗號
req := 'INSERT INTO CLIENTS(
IDEVT,
ID_CLIENT,
CATEGORIE_CLIENT,
SEGCO,
LIB_SEGCO,
NOM,
ADRESSE,
CODE_POSTAL,
VILLE,
PAYS,
STATUT)
values(''' || UNID ||''','''||ID||''','''||SEGCO||''','''||L_SEGCO ||''','''||**LIB_SEGCO** ||''','''|| NOM||''','''||
ADRESSE||''','''||CODE_POSTAL||''','''||cVILLE||''','''||PAYS||''','''||CODE_STATUT||''')';
execute immediate req;
任何想法逃脫撇號時它通過變量?
感謝
絕對沒有必要在這個特殊的演示案例中使用動態SQL。使用靜態的'INSERT'語句。變量'UNID,ID,....'已經被PL/SQL引擎視爲綁定變量。 –