在数据库中的一个表有一个字段nType的类型是nvarchar
结果在Delphi中执行了以下语句
  Label1.Caption := FieldByName('nType').AsString;
中出错,说不存在这个字段,但将nvarchar改为varchar则不会出错,请问是什么问题??

解决方案 »

  1.   

    你用的是delphi几的,我早在用delphi5时遇到过,好像是delphi5的一个BUG
      

  2.   

    我觉得不会
    你从几个地方去发现问题吧
    1、你上述那句话是否应该改为label1.caption:=dm.adoquery1.fieldbyname('ntype').asstring;
    或许你前面已经用了类似with dm.adoquery1之类的语言则不需要更改了,其中dm是datamodule模块
    2、你仔细检查一下是否你定义的字段和sql server中所定义的关键字冲突,试着换一个名称看看
    以上建议供参考
      

  3.   

    我用的是
      with adoQuery1 do
      begin
      end;
    以上都没有问题啊,我的是Delphi5
      

  4.   

    Label1.Caption := query.FieldByName('nType').AsString;