存储过程 EXECUTE IMMEDIATE sql 不执行,不报错的原因

。。。。。。

SET
stm2 = 'delete from aa where a=1';
 EXECUTE IMMEDIATE stm2;

。。。。。。

我的sql是一个delete 语句,delete没有删到数据时EXECUTE IMMEDIATE下面的所有语句都不执行,不报错。

验证经过:

存储过程使用 EXECUTE IMMEDIATE sql 时,在sql前输出日志可以,sql后EXECUTE IMMEDIATE前输出日志也可以,但是在EXECUTE IMMEDIATE后就无法输出日志。将delete语句改为select 语句,查询不到数据,随便插入一条数据使SQl可查询到数据,再次执行存储过程,执行成功。

猜你喜欢

转载自my.oschina.net/u/2282777/blog/1587740