说明:如果dbgrid对应的数据库中的字段为null则会出现"invalid variant type conversion"出错信息,不知为什么,如何解决呀?
我的语句为:combobox8.Text:= DataModule1.ADOTablejbqk.FieldValues['ygxs'];

解决方案 »

  1.   

    combobox8.Text:= DataModule1.ADOTablejbqk.FieldByName('ygxs').asstring;
      

  2.   

    因为.FieldValues['ygxs']类型是variant,不匹配string
      

  3.   

    是的,数据中的字段是设成variant的,那如何解决呀?
    我刚才按guozhi说的那样加了.asstring还是不行,还是那个错误!
      

  4.   

    我遇到过这样的问题,在判断之前现判断一下是否为null,是则不要进行下面的语句。
      

  5.   

    if DataModule1.ADOTablejbqk.FieldValues['ygxs']=null then
      combobox8.Text:= ''
    else
      combobox8.Text:= DataModule1.ADOTablejbqk.FieldByName('ygxs').asstring;
      

  6.   

    直接
    combobox8.Text:= DataModule1.ADOTablejbqk.FieldByName('ygxs').asstring;
    就可以了,不用判断。