表单中做了一个按钮,功能是点击后弹查另一个表单,
现在问题是总是弹出以下错误,程序并没有Null类型的,检查不出什么来,
请高手帮看看!..."Could not convert variant of type (null) into type (string)"...

解决方案 »

  1.   

    应该是数据库字段方面的问题吧。
    比如说,有几个字段的值为空(null),而你取出来的时候转成了string型。
    试试改成以下方式:
    select isnull(Field1, '') as Field1, ... from Table1 where...
      

  2.   

    先判断 VarIsNull(v),然后赋值给String
    或者FieldByName('').AsString....
      

  3.   

    错误信息是:
    “无法将变体类型的(空值:NULL)转换成字符串类型”
    解决办法:
    不要隐式转换,直接用显式转换就行了。var tempstr:string;tempstr:=adoquery1.fields[0].value;//这里用的是隐式转换,如果字段值为null,无法完成转换!会引起报错的;tempstr:=adoquery1.fields[0].asstring;//这里用显式转换,如果字段值为null,直接转换成:空字符(''),不会引起报错;
      

  4.   

    UP   up   UP
      

  5.   

    是内部错误嘛,,不是很明白
    UP  up  UP
      

  6.   

    问题已经解决了,还是dinglinger 老兄厉害,我就是把v:=trim(sqaddr_sql.fieldbyname('wdbh').value);改成
    v:=trim(sqaddr_sql.fieldbyname('wdbh').asstring);就一切解决了,多谢了啊,马上结贴给分