请问adoquery的sql语句是什么类型啊?为什么我用下面的语句编译时通不过,提示:[Error] Unit_Infobase.pas(183): Incompatible types: 'String' and 'TStrings'代码如下:
var
sql:string;
...
sql:='select * from table';
  with ADOQuery1 do
  begin
  Close;
  SQL.Clear;
  SQL.Add(sql);
  Prepared;
  Open;
  end;
...

解决方案 »

  1.   

    TAdoQuery.SQL 是 TStrings类型.
    你上面的代码没有错.
    如果编译器硬说有问题,请检查其他.
      

  2.   

    傻子:-), Delphi是不区分大小写的,
    SQL.Add(sql)
    有什么问题你还看不出来吗?
    它等价于:
    SQL.Add(SQL);with ADOQuery1 do
      SQL.Add(sql)
    等价于
    ADOQuery1.SQL.Add(ADOQuery.sql);明白了?
      

  3.   

    还是 lyre(大头鬼) 心细.
    看出变量名的问题.真的要认真检查一下自己的大意.
      

  4.   

    定义变量的时候还是不要定义那些跟 delphi 有任何联系的你 定义成这样不就可以了如:sql111:string;