Foxtable(狐表)用户栏目专家坐堂 → 为什么自动填充的数值列空值会变为0


  共有1544人关注过本帖树形打印复制链接

主题:为什么自动填充的数值列空值会变为0

帅哥哟,离线,有人找我吗?
happyft
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1905 积分:16921 威望:0 精华:0 注册:2014/7/29 19:09:00
为什么自动填充的数值列空值会变为0  发帖心情 Post By:2017/10/11 9:06:00 [只看该作者]

用以下代码测试
Dim r As Row = Tables("订单_明细").current
Dim cmd As New SQLCommand
cmd.ConnectionName = Mydata
Dim dt As DataTable
cmd.CommandText = "SE LECT 规格,长度 From {产品编码} where [产品编码] = '" & r("产品编码") & "'"
dt = cmd.ExecuteReader()
If dt.DataRows.count > 0 Then
    Dim dr2 As DataRow = dt.DataRows(0)
    r("规格") = dr2("规格")
    r("长度") = dr2("长度")  '长度会按0填充
end if

    If Tables("订单_明细").Cols("长度").IsNumeric Then
        If dr2("长度") > 0 Then  '不判断数值列为空时会按0填充
            r("长度") = dr2("长度")
        End If
    Else
        r("规格") = dr2("规格")
        r("长度") = dr2("长度")
    End If

 想让后台数据值列是空值时,不要用0填充 ,,现在是每个地方都只能加上下面的代码进行判断,但是觉得很繁琐, 为什么会这样?
谢谢!
   



 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/10/11 10:31:00 [只看该作者]

 数值列如果为nothing,都会默认转换成0的。这个没办法,必须转换。

 回到顶部