惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
G
Google Developers Blog
J
Java Code Geeks
B
Blog
C
Check Point Blog
云风的 BLOG
云风的 BLOG
MyScale Blog
MyScale Blog
I
InfoQ
A
About on SuperTechFans
WordPress大学
WordPress大学
F
Fortinet All Blogs
S
SegmentFault 最新的问题
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
M
MIT News - Artificial intelligence
月光博客
月光博客
Y
Y Combinator Blog
Jina AI
Jina AI
V
V2EX
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research

博客园 - WinkSky

索引 This is a test post by Windows Live Writer [提问]升级至SQL2005后续问题讨论. [提问]SQL2005关于点对点事务型映射 李开复:21世纪7种人才最抢手 SQL2005常见性能问题排错演示代码[收藏] 上海Oracle高峰会感悟 Microsoft® Visual Studio® .NET™ 2003 Service Pack 1 存储过程编写小工具[收藏] ASP.NET(C#) 編碼規範[整理讨论] 颜色代码表[转] Gmail的图片签名[收藏] 精妙SQL语句收集[转载] [转载]61条面向对象设计的经验原则 需求工程16字方针 SQL各种写法的效率问题-转载自邹建专栏 SQL2000视图问题[请教] 讨论String与string的区别. 一道终身受用的测试题
SQL2000中奇怪的NULL值记录问题[求助]
WinkSky · 2006-09-21 · via 博客园 - WinkSky

表资料:

Table1:
aa     bb        
1      10
         
2      20

3      NULL
4      NULL

通过查询分析器查询(不包含NULL记录)

select * from table1 where bb <>'30'
结果:
aa  bb
1    10

2    20

创建存储过程:

CREATE PROCEDURE [dbo].[pGetTable1] 
(
    
@bb varchar(10
)
)
AS

SELECT         *
FROM             Table1
WHERE         (bb <> @bb
)
GO

通过查询分析器查询(包含NULL记录)

exec pGetTable1 @bb='30'
结果:
1    10
2    20
3    NULL
4    NULL

去查了一下觉得是否是SET ANSI_NULLS,SET ANSI_NULL_DFLT_ON,SET ANSI_NULL_DFLT_OFF等开关的原因,不过试了半天发觉还是没找到原因所在。
无意中用查询分析器Alter了一下存储过程,发现NULL值记录就没有了...之后又试了多次,发现一模一样的存储过程,在企业管理器中产生就会有NULL值记录,而在查询分析器中Create或者Alter过后NULL值记录就自动消失了...
不知谁了解其中的原因,是否是在查询分析器创建或修改存储过程还会打开其他开关或者有其他操作,导致有不一样的情况发生?