“'”的问题
select top 10 * from ai where fieldA in(''A'',''B'',''C'')

解决方案 »

  1.   

    楼主上面怎么有2个'select select??  MySQL := 'select select top 10 * from ai where fieldA in('+''''+'A'+''''+','+''''+'B'+''''+')';
      

  2.   

    还是不对,在sql语句里面,两个'代表一个',而且在Delphi里面有专门执行存储过程的控件,可以接收输入参数,也不是你这样的用啊。
    你还是匹配的不够好。再仔细看看吧,
      

  3.   

    你打开事件探查器.跟踪一下.sql到底执行了什么语句,再改.
      

  4.   

    到delphi版,问问字符串中有'时是怎么表示
      

  5.   

    --如果delphi中,一个'用两个表示,则修改如下:Var
      MySQL: string;
    begin
      MySQL := 'select top 10 * from ai where fieldA in(''A'',''B'',''C'')';
      

  6.   

    Var
      MySQL: string;
    begin
      MySQL := replace('select select top 10 * from ai where fieldA in('+''''+'A'+''''+','+''''+'B'+''''+')',''','''');
      ADO.Execute(MySQL)
    End;