求解 如题: begin
ls_tmp_sql := 'select nvl(max(to_number(substr('||ls_fsjkzdm||','||ls_sub_num||'))),1) from '||ls_fsjkmc||'.'||ls_fsjkbm||' where '||ls_fsjkzdm||' like '||'''%'||ls_tmp_pre||'______%'||'''';
execute immediate ls_tmp_sql into lh_tmp1;
end;执行到 execute immediate 出异常求高人指点
ls_tmp_sql := 'select nvl(max(to_number(substr('||ls_fsjkzdm||','||ls_sub_num||'))),1) from '||ls_fsjkmc||'.'||ls_fsjkbm||' where '||ls_fsjkzdm||' like '||'''%'||ls_tmp_pre||'______%'||'''';
execute immediate ls_tmp_sql into lh_tmp1;
end;执行到 execute immediate 出异常求高人指点
用dbms_output把ls_tmp_sql打印出来,手动执行看报什么错
declare
vstr_sql varchar2(4000);
begin
vstr_sql :='select 1 from dual where dummy like ''%'||&abc||'%''';
dbms_output.put_line(vstr_sql);
end;
执行输入'dsfsd',打印出来的SQL语句如下:
select 1 from dual where dummy like '%dsfsd%'