读书人

为什么存储过程里set ansi_nulls off无

发布时间: 2012-01-29 21:39:32 作者: rapoo

为什么存储过程里set ansi_nulls off无效?
在查询分析器里都是有用的
select * from xxx where yyy=null

存储过程里面是没有返回任何数据,因为yyy=后面的值是变量,也许是有值的也许是空值,所以不能用is null

[解决办法]
对于存储过程,SQL Server 使用最初创建存储过程时的 SET ANSI_NULLS 设置值。无论随后何时执行存储过程,SET ANSI_NULLS 的设置都还原为其最初使用的值并生效。当在存储过程内唤醒调用 SET ANSI_NULLS 时,其设置不更改。

读书人网 >SQL Server

热点推荐