SQL查询和特殊字符
问题描述:
我在尝试使用SQL Server数据库中具有'>','%'和其他特殊字符的值进行INSERT查询时遇到问题...SQL查询和特殊字符
当然,如果一个ASP.NET的Web应用程序(C#)
的方式我准备插入查询的应用程序是:
string Query1 =
"UPDATE message SET message = '" + mymessage + "' " +
"WHERE operationType = '" + value_operationType + "' " +
"AND languageType = '" + value_languageType + "';";
使用IIS 7,我没有这个问题,但使用的是IIS 6我有它。
是否有一些配置我应该在IIS 6上更改?
谢谢!
答
只是回答我的问题,因为一个coleague能够提供它的解决办法是添加在web.config中这样一行:
<system.web>
...
<httpRuntime requestValidationMode="2.0" />
...
</system.web>
感谢
答
只要你知道,这是运行一个查询,就好像他们知道怎么有人可以删除你的整个数据库以危险方法,它可能会终有一天!
在回答你原来的问题,你可以HTML编码值:
string htmlEncodedMessage = Server.HtmlEncode(mymessage);
string Query1 =
"UPDATE message SET message = '" + htmlEncodedMessage + "' " +
"WHERE operationType = '" + value_operationType + "' " +
"AND languageType = '" + value_languageType + "';";
我强烈建议你看看数据库操作的其他方法,比如LINQ to SQL的。
+1。 Asker的原始方法很危险。 – 2011-04-19 13:43:27