var
 str:stringstr:='test'+'''';
edit1.text:=str;try it

解决方案 »

  1.   

    'sql * from table where fieldbyname(''name'')=''afei'''
      

  2.   

    'sql * from table where fieldbyname('name')='+''''+edit1.text+''''
      

  3.   

    sql.add(select * from table where fieldname='ls'); 
    fieldbyname('ls')=(edit1.text).asstring;
      

  4.   

    在DELPHI中如果要在字符串中引用单引号作为字符的一部分,必须写两个单引号。你始终记得两个引号代表一个引号就可以了。
      

  5.   

    同意azhong(阿中)的,应该是4个单引号
      

  6.   

    如果sql已经用了引号,加两个
    如: 'SELECT * FROM TABLE1 WHERE NAME1=''xxx'' ';
    还有其他办法,如:
    'SELECT * FROM TABLE1 WHERE NAME1='+''''+xxx+'''';
    'SELECT * FROM TABLE1 WHERE NAME1='+QuotedStr(xxx);
    注:xxx为string类型
      

  7.   

    sorry,刚才没有看清楚问题
    应该是:
    'sql * from table where fieldbyname('name')='
                      +''''+edit1.text+'''';
    或者是:
    'sql * from table where fieldbyname('name')='
                      +QuotedStr(edit1.text);