用户在一个项目的开发中遇到了这样一个问题,当使用T-SQL语法编写的有结果集返回的动态SQL时报如下错误:
Result set not permitted in ‘'
为什么会是这样呢?用户编写动态SQL采用的是T-SQL语法,在执行动态SQL的时候如果返回结果集就会出现问题(也就是说T-SQL语法并不支持这个特性)。改为使用W-SQL语法,并且调用动态SQL时采用如下方式即可解决这一问题:
execute immediate with result set on @sql_text
对于没有返回结果集的sql语句可以使用如下方式:
execute immediate @sql_text
建议尽可能使用W-SQL语法进行IQ的SQL编程,W-SQL的功能更全面!
阅读(2011) | 评论(0) | 转发(0) |