你这是什么啊,'不配对啊
strSql := 'select * from tablea where name=''(ddd)'' ' 
这样差不多

解决方案 »

  1.   

    你在代码里添加多好。adoquery1.sql.add('select * from tablea where name='+#39+'ddd'+#39);
      

  2.   

    其实非常简单!
    看你加分的面上我还是告诉你了
    你用的access数据库是吧,以后sqlserver 也一样,你碰到是'的地方你就把他转换成''(在加一个符号!)碰到"的时候就转化成""(也多加一个符号),解析器自动解析他为一个担搁的符号,而不会再把它做系统的分隔符了!哈哈哈,快点加分1!!
      

  3.   

    如果牵涉到用户输入的问题,我认为有两种办法:
    1。禁止用户输入上述符号
    2。用户可以输入,但是你存入数据库的时候就要处理一下,就是搜索用户输入的内容,如果有上述字符则再加一个相同字符,如输入<aa's"sd''sadg""sdg>就变成<aa''s""sd''''sadg""""sdg>
      

  4.   

    请问有没有类似REPLACE的API呢?麻烦告诉一下。
    其实我自己些出来也是可以的,但如果有API的话,就免掉这一关了。