大家好:
  我在使用一个变量查询的时候
   var name:tstrings;
       i:integer;
 begin 
  name:=tstringlist.create;
  ......
  for i:=0 to name.count-1 do 
   begin 
    adoquery1.sql.clear;
    ......
    adoquery1.sql.add(select * from tablename where    fieldname='+''''+name[i]+'''');
   showmessage(sql[0]);
   .....
   问题出现在name[i]有可能为空,那么显示的sql语句为:
 select * from tabelname where fieldname='
   是不是d7的优化选项把后面的引号给去掉了啊?
   只要name[i]不是空的情况就正常,

解决方案 »

  1.   

    不好意思写错了,应该是
    .................
    adoquery1.sql.add('select * from tablename where    fieldname='+''''+name[i]+'''');
    .......................
    各位继续关注啊!
      

  2.   

    我的Delphi没有
    你的sql语句试试这么写行不行:
    Query.Sql.Add('select * from tablename where  fieldname='''+name[i]+'''')
      

  3.   

    Query.Sql.Add('select * from tablename where  fieldname='''+name[i]+'''')