首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 编程开发 > ASP教程 > ASP基础教程 > 正文
什么造成字段中没有值?
来源:木子屋 作者:dnawo 2007年10月09日 09:27 网友评论:0条 点击:
有时我们需要查询出某字段没有值的全部记录,那应该用rs("xx")=""还是IsNull(rs("xx"))呢?要得出结论,我们还得从头说起:什么情况下字段中会没有值?因为这和我们的结论关系密切。

一、什么造成字段中没有值?

我们建一个表来测试下,表中只有两个字段id(自动编号)和aa(文本):

1.将aa字段"允许空字符串"属性设置为否,测试结果

rs("aa") = "mzwu.com"  ---> 添加成功
rs("aa") = ""          ---> 字段 't8.aa' 不能是零长度的字符串。
rs("aa")=Empty         ---> 添加成功
rs("aa") = Null        ---> 添加成功

2.将aa字段"允许空字符串"属性设置为是,测试结果

rs("aa") = "mzwu.com"  ---> 添加成功
rs("aa") = ""          ---> 添加成功
rs("aa")=Empty         ---> 添加成功
rs("aa") = Null        ---> 添加成功


经上边测试后数据库中表记录如下:

按此在新窗口浏览图片

从上边的测试结果中我们不难得出结论,造成字段没有值可能是下边四种情况之一:

● rs("aa") = ""
● rs("aa")=Empty
● rs("aa") = Null
● 当表中存在多个字段时,部分字段添加值,部分字段未添加时也会造成字段没有值

按此在新窗口浏览图片

二、rs("aa")="" or IsEmpty(rs("aa")) or IsNull(rs("aa"))

针对第一节结论中的四种情况,我们分别对其值用rs("aa")="" 、 IsEmpty(rs("aa")) 、IsNull(rs("aa"))进行测试,得出结果:

1.测试rs("aa") = ""

rs("aa")=""       '结果True
IsEmpty(rs("aa")) '结果False
IsNull(rs("aa"))  '结果False

2.测试rs("aa")=Empty

rs("aa")=""       '结果-
IsEmpty(rs("aa")) '结果False
IsNull(rs("aa"))  '结果True

3.测试rs("aa")=Null

rs("aa")=""       '结果-
IsEmpty(rs("aa")) '结果False
IsNull(rs("aa"))  '结果True

4.测试未添加值的字段

rs("aa")=""       '结果-
IsEmpty(rs("aa")) '结果False
IsNull(rs("aa"))  '结果True


OK,现在我们已经不难得出结论了:
当使用rs("xx") = ""添加字段值时,我们应用rs("xx")=""来判断它是否没值;
当使用rs("aa")=Null 或rs("aa")=Empty添加字段值或没给字段添加值时,我们应用IsNull(rs("xx"))来判断它是否没值;
所以,为了得到准确的结果,当要查询字段没有值的全部记录时应使用:rs("xx")="" or IsNull(rs("xx"))

对于没有值的字段,rs("xx")&""=""结果都为True,与添加方式无关,因而可直接用rs("xx")&""=""代替rs("xx")="" or IsNull(rs("xx"))
上一篇:初学者ASP指令的学习   下一篇:ASP类型个人网站与动网整合方法
收藏此页】【打印】【关闭
 相关文章  我要点评
·用ASP统计用户在站点的停留时间
·利用ASP实现邮箱访问
·要注意ASP编程易犯的一个错误
·ASP.NET2.0中文验证码的实现
·ASP.NET防止用户多次登录的方法
·ASP.NET中备份SQL Server数据库的方法
·ASP.NET页面间数据传递
·ASP.NET缓存的方法分析

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】