数据库中有字段是空的,但不是NULL,请问我如何将这个字段赋值为0?

程序员Linc
优质创作者: 人工智能技术领域
领域专家: 操作系统技术领域
2008-10-09 04:17:52
如题!
我是做一个销售月报表,
可是有几天是没有销售记录的,
遇到这个情况程序就出错。
想用这个语句IIf(IsNull(m_rs.Fields("eatmoney").Value), 0, m_rs.Fields("eatmoney").Value)
可那个字段不是NULL的!?
怎么办》???
...全文
939 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
程序员Linc 2008-10-13
  • 打赏
  • 举报
回复
看来我要重新发帖了?
程序员Linc 2008-10-13
  • 打赏
  • 举报
回复
各位高手,
我又有一新问题,
就是说用msflexgrid控件
如何把没有值的单元格变为0值??
固执的大叔 2008-10-13
  • 打赏
  • 举报
回复
用1楼的这个查询就行了啊...查询完,绑定上去就可以了
select (case when 字段='' then 0 else 字段 end) from xxx where ....
kinglot 2008-10-10
  • 打赏
  • 举报
回复
function chkdata(byval str as object)as integer
if str isdbnull or str=string.empty then
return 0
else
return cint(str)
end if
end function
wuyi8808 2008-10-09
  • 打赏
  • 举报
回复
http://msdn.microsoft.com/zh-cn/library/tckcces5.aspx

另外,VB中还有一个 IsDBNull 函数,说明见上述网址。

如果 Expression 的数据类型的计算结果为 DBNull 类型,IsDBNull 将返回 True;否则,IsDBNull 将返回 False。

System.DBNull 值指示 Object 表示缺少的或不存在的数据。DBNull 与 Nothing 不同,后者指示变量尚未初始化。DBNull 也与零长度字符串不同 (""),零长度字符串有时也称为 null 字符串。
程序员Linc 2008-10-09
  • 打赏
  • 举报
回复
多谢各位高手前来帮忙啊!!!
wuyi8808 2008-10-09
  • 打赏
  • 举报
回复
况且我猜LZ的 eatmoney 多半是数值型的(比如整数或浮点数),而不是字符串型的。
wuyi8808 2008-10-09
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 hbxtlhx 的回复:]
如果你使用.Net,也可以使用string.IsNullOrEmpty(string)来判断.
[/Quote]

数据库中的 null 在.net中是 System.DBNull.Value,即不是 VB 的 Nothing (C#的 null),也是不 System.String.Empty,是不能用 String.IsNullOrEmpty() 判断的。
北京的雾霾天 2008-10-09
  • 打赏
  • 举报
回复
如果你使用.Net,也可以使用string.IsNullOrEmpty(string)来判断.
wuyi8808 2008-10-09
  • 打赏
  • 举报
回复
如果方便修改SQL语句的话,也可以在SQL中处理:
select ..., isnull(eatmoney, 0) as eatmoney, ... form ...
北京的雾霾天 2008-10-09
  • 打赏
  • 举报
回复
但不是NULL
========================
不是NULL了,当然IsNull就不行了.这种情况一般是字符类型的.如果字符类型的值不是NULL,则可以通过长度为0来判断是否为空(Empty)
yangpeiyu 2008-10-09
  • 打赏
  • 举报
回复
m_rs.Fields("eatmoney").Value=""直接这样判断.

还有你的SQL都做下处理.NULL都返回""

select isnull(eatmoney,'') as eatmoney from 表
wuyi8808 2008-10-09
  • 打赏
  • 举报
回复
试试这个:
IF (m_rs.Fields("eatmoney").Value = System.DBNull.Value)
lovehongyun 2008-10-09
  • 打赏
  • 举报
回复
在写sql的时候判断一下

select (case when 字段='' then 0 else 字段 end) from xxx where ....

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧