想让edit2.text里的字加上2个''号
比如  edit2.text原先的内容是 abcd  现在想让他变成 'abcd'
这么这样不行:edit2.Text:= ''' + edit2.Text+ ''';换成这样就行了 edit2.Text:= '''' + edit2.Text+ '''';?''''  4个'号才等于一个'啊????  (主要是执行SQL语句的时候字符串太麻烦了  有个表: ID,name,sex 。 ID 是int name是字符串 sex是true或0 
 我弄了一个晚上才弄好了
可是超麻烦啊  有没别的好的办法: edit2.Text:= '''' + edit2.Text+ '''';
  S := Format('(%d,%s,%d)', [strtoint(edit1.text),edit2.text,strtoint(edit3.text)]);
  sqlstr := 'insert into 表1(学号,名字,性别) values'+S;
  ADOQuery1.Close ;
  ADOQuery1.SQL.Clear ;
  ADOQuery1.SQL.Add(sqlstr); )有经验的大大说说啊  给字符串折磨的不成人样了 _-##  或者有什么工具吗?

解决方案 »

  1.   

    delphi 中'为关键字,所以要用两个作为转义字符。很正常阿!
      

  2.   

    在DELPHI代码编辑中,如果要引用一个符号“'”,则必要用两个“'”号表示;
    如:var
        s:string;要使S的值为:MyGod这个字符串;赋值方法为:s:='MyGod';
    要使S的值为:'MyGod'这个包括两个符号的字符串;赋值方法为:s:=' '' '+'MyGod'+' '' ';
    或是:s:=' ''MyGod'' ';
      

  3.   

    #39=';这样直观一些就用edit2.Text:= #39+ edit2.Text+ #39;
      

  4.   

    redNada?
    starcraft..
    在sql里的‘需要处理,加个'表示转义,用’‘含起来
      

  5.   

    想让edit2.text里的字加上2个''号
    比如  edit2.text原先的内容是 abcd  现在想让他变成 'abcd'
    这么这样不行:edit2.Text:= ''' + edit2.Text+ ''';换成这样就行了 ''''  4个'号才等于一个'啊????  
    ===================
    这样理解一下
    edit2.Text:= '"' + edit2.Text+ '"';
    其实就是两个'才是一个'
      

  6.   

    vc   '\''   //   \表示显示特殊字符
    delphi ''''   //   '表示显示特殊字符,好理解了吧
      

  7.   

    用QUOTEDSTR函数就可以加引号
    QUOTEDSTR(AA)
      

  8.   

    赞同 wasi(小铁) 的方法
      

  9.   

    S := Format('(%d,''%s'',%d)', [strtoint(edit1.text),edit2.text,strtoint(edit3.text)]);
    这样不就可以解决了吗,都用上了format函数了,干麻还要非改edit2.text不可!!!
      

  10.   

    好象这样也正确:
    S := Format('(%s,''%s'',%s)', [edit1.text,edit2.text,edit3.text]);