登录
注册
搜索
帮助
60930597(中国DNN联盟在线)已满
73512007(中国DNN联盟在线)
会员
界面
简洁版本
在线
DNN论坛
SQL Server技术讨论区
SQL Server 2000技术讨论区
SQL Server中“空值”辨析
帖子标题
DotNetNuke交流讨论区
DotNetNuke 问题讨论区
DotNetNuke 视频教程
DotNetNuke 技术文章
DotNetNuke 资源下载
DotNet 技术讨论
SunBlog模块讨论区
SQL Server技术讨论区
SQL Server 2000技术讨论区
SQL Server 2005技术讨论区
Analysis Services讨论区
DnnMe站务相关
站内公告
反馈/建议
灌水/非技术
[垃圾箱/恶性广告]
1
/ 1 页
1
跳转
页
查看:
454
SQL Server中“空值”辨析
dnnme
dnnme
组别:
管理员
性别:
生日:
1985-4-1
来自:
北京
积分:
674
帖子:
621
注册:
2008-06-02
2008-09-08 21:12
|
只看楼主
树型
|
收藏
|
小
中
大
1
SQL Server中“空值”辨析
初学数据库编程我们可能会有一些对“空值”的疑问,比如通过编程新建的一个表中所有数据皆显示为<NULL>,手动添加并删除文字后又变成了空白;一个字符串类型的字段,明明没有填值,却不等于"";用ADO.NET从数据库中取值,每遇到有<NULL>的就出错……这需要我们正确认识.NET和SQL Server中几种不同的“空值”。
1、真正的空值,也就是“没有输入的值”,可以出现在大多数类型的字段中(如果没有别的约束条件),SQL server中表示为null,显示为<NULL>,手工在SQL server企业管理器中输入的方法是按Ctrl+0。它在.NET中对应System.DBNull.Value。在T-SQL命令中,判断一个值是不是空值,要用“is null”而不是“= null”;处理空值有个ISNULL函数,它使用指定的值替换null。用ADO.NET从数据库得到的空值无法自动转化为空字符串或Nothing,须手动检测:如果得到System.DBNull.Value,则赋给数据对象Nothing或其它自定义的有意义的值。
2、空字符串(零长度字符串),只出现在字符串类型(如nvarchar)的字段中,SQL server中表示为'',显示为空白,手工在SQL server企业管理器中输入时清空一个单元格即可。它在.NET中对应System.String.Empty,也就是我们常用的""。在T-SQL命令中处理空字符串和处理一般的字符串没什么区别。用ADO.NET从数据库得到的空字符串也和一般的字符串没什么区别。
发送短消息
查看公共资料
查找该会员全部帖子
UID:
11
精华:
7
威望:
18
金钱:
103.55 元
状态:
在线
Axiping2006@sohu.com
Axiping
345322230
<<
上一主题
|
下一主题
>>
1
/ 1 页
1
跳转
页
论坛跳转...
DotNetNuke交流讨论区
DotNetNuke 问题讨论区
DotNetNuke 视频教程
DotNetNuke 技术文章
DotNetNuke 资源下载
DotNet 技术讨论
SunBlog模块讨论区
SQL Server技术讨论区
SQL Server 2000技术讨论区
SQL Server 2005技术讨论区
Analysis Services讨论区
DnnMe站务相关
站内公告
反馈/建议
灌水/非技术
[垃圾箱/恶性广告]
我的主题
我的帖子
我的精华
帖子标题
空间日志
相册标题
作 者
我的主题
我的帖子
我的附件
我的精华