vb调用数据库,数据库里面的字段有的定义为可以为空
插入数据时,空子段插入空字符串用rs调用纪录集时候显示如下:

Text1(18).Text = tb!a_id
        Text1(15).Text = tb!a_add
        Text1(16).Text = tb!a_m3
其中a_m3为空
这时出现错误实时错误94,无效使用null问:如果做判断怎么写语句呢?

解决方案 »

  1.   

    取记录级的时候需要去判断下,
    因为字符串不能为NULL値
    if tb.field("a_id").vaule=null then text1(18).text.text=""
      

  2.   

    if not IsNull(tb!a_m3) then
    Text1(16).Text = tb!a_m3
    else
    Text1(16).Text=""
    endif
      

  3.   

    Text1(15).Text = iif(isnull(tb!a_add),"",tb!a_add)
    在对Null操作时,不论怎么逻辑比较结果都是Null,用Vb的内置IsNull()函数进行判断。
      

  4.   

    Text1(18).Text = IIf(IsNull(tb!a_id), "", tb!a_id)一行搞定~ ^-^
      

  5.   

    Text1(18).Text = tb!a_id & ""
    Text1(15).Text = tb!a_add & ""
    Text1(16).Text = tb!a_m3 & ""
      

  6.   

    建议使用hisourcezhang(小鱼龙变化)的判断方法,
    写在一行仍有可能报同样的错误
      

  7.   

    Text1(15).Text = iif(isnull(tb!a_add),"",tb!a_add)
      

  8.   

    Text1(15).Text = tb!a_add &""
        Text1(16).Text = tb!a_m3 &""