日期:2014-05-17  浏览次数:20524 次

插入sql2005数据库,inert 语句中含有单引号,怎么办啊?
我的网页中使用dntb(donnettextbox)插件(就是加强版的textbox),这样可以直接将一些复杂的文本信息(如:带格式的字体、表格等),以HTML脚本的形式,录入数据库。

但是现在出现了一个问题,有些文本信息变为HTML脚本时有单引号——’,这样的在inert语句输入数据库时,就会提示语法错误。

经过初步学习,我知道单引号是数据库的非法字符,如果确实需要把例如(it's mine)输入的话,需要把语句改成(it''s mine)。还有人提出使用某种对象的方式进行插入(这个方法我还没搞清楚)。

目前我尝试对问题文本进行了转义:
Description.Replace("'","''"),然后再执行inert语句。

但是还是无法插入,提示非法字符,哪位高人有没有更好的办法呢?

------解决方案--------------------
在Description.Replace("'","''")后,将你执行的SQL语句打印一下,然后在数据库执行,看有什么语法错误。。。