SQL.clear;
         SQL.Add('select c.* ,书名,作者,定价,版次,出版日期,印次'
           +' from 重印单建议表 as c,书'
         +' where c.书代号 =书.书代号 '
         +' and  c.书代号 LIKE ''________'+editppz.text
         +'%'' order by 重印单号');
编译通不过,[Error] cydjcydgl.pas(569): Constant expression expected
告诉我怎么改,在线揭贴!

解决方案 »

  1.   

    SQL.Add('select c.* ,书.书名,书.作者,书.定价,书.版次,书.出版日期,书.印次'
               +' from 重印单建议表 as c,书'
             +' where c.书代号 =书.书代号 '
             +' and  c.书代号 LIKE ''________'+editppz.text
             +'%'' order by c.重印单号');
      

  2.   

    最好先定义一个变量:selsql:string ;
    然后把这些语句赋给它.
    *.sql.clear;
    *.sql.add(selsql);
    *.sql.open;
    另外,注意sql语句中通配符_ % 的正确使用.
    先试试!
      

  3.   

    还是不行
    编译通不过,[Error] cydjcydgl.pas(569): Constant expression expected
      

  4.   

    SQL.clear;
    SQL.Add('Select T1.*,T2.书名,T2.作者,T2.定价,T2.版次,T2.出版日期,T2.印次
             From 重印单建议表 T1,书 T2 Where T1.书代号 =书.书代号 And T1.书代号
             LIKE'+''''+Editppz.text+''%''+''''+'order by T2.重印单号');
      

  5.   

    SQL.clear;
    SQL.Add('Select T1.*,T2.书名,T2.作者,T2.定价,T2.版次,T2.出版日期,T2.印次
             From 重印单建议表 T1,书 T2 Where T1.书代号 =T2.书代号 And T1.书代号
             LIKE'+''''+Editppz.text+''%''+''''+'order by T2.重印单号');
    Prepare;
    Open;