当前位置: 代码迷 >> Sql Server >> 为什么存储过程里set ansi_nulls off无效?该如何处理
  详细解决方案

为什么存储过程里set ansi_nulls off无效?该如何处理

热度:24   发布时间:2016-04-27 20:59:20.0
为什么存储过程里set ansi_nulls off无效?
在查询分析器里都是有用的
select   *   from   xxx   where   yyy=null

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

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