首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

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

2012-01-29 
为什么存储过程里set ansi_nulls off无效?在查询分析器里都是有用的select*fromxxxwhereyyynull存储过程

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

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

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

热点排行