execute immediate 的问题
写了一个存储过程如下:<BR>create or replace procedure chang_preset_por(var_tbl IN VARCHAR2)<BR>is<BR> ...........................................<BR> type t_cursor is ref cursor;<BR> preset_cur t_cursor;<BR> var_sql varchar2(2000);<BR> var_update varchar2(2000);<BR>begin<BR> var_sql:='<BR> select DATA_FMT_DETAIL<BR> from ' || var_tbl || ' <BR> where DATA_FMT = 2<BR> for update of DATA_FMT_DETAIL nowait';<BR> open preset_cur for var_sql;<BR> fetch preset_cur into var_oldpreset;<BR> <BR> ..........................................<BR> var_update := 'UPDATE ' || var_tbl || ' SET DATA_FMT_DETAIL= ''' || var_newpreset || ''' WHERE CURRENT OF preset_cur';<BR> execute immediate var_update;<BR> ...........................................................<BR> close preset_cur;<BR>end chang_preset_por ;<BR><BR>运行到“execute immediate var_update;”时出错,请高手指教一下,是那里出了错??execute immediate和WHERE CURRENT OF不能在一起用吗???页:
[1]
