Asp.net SQL查询和特殊字符
当我尝试使用SQL Server数据库上具有“>”、“%”和其他特殊字符的值进行INSERT查询时遇到问题 当然,如果应用程序是ASP Net Web应用程序(C#) 我准备插入查询的方式是:Asp.net SQL查询和特殊字符,asp.net,sql-server,Asp.net,Sql Server,当我尝试使用SQL Server数据库上具有“>”、“%”和其他特殊字符的值进行INSERT查询时遇到问题 当然,如果应用程序是ASP Net Web应用程序(C#) 我准备插入查询的方式是: string Query1 = "UPDATE message SET message = '" + mymessage + "' " + "WHERE operationType = '" + value_operationType + "' " + "AND la
string Query1 =
"UPDATE message SET message = '" + mymessage + "' " +
"WHERE operationType = '" + value_operationType + "' " +
"AND languageType = '" + value_languageType + "';";
使用IIS 7我没有这个问题,但使用IIS 6我有这个问题
在IIS 6上是否有一些配置需要更改
谢谢 创建这样的SQL命令可能导致SQL注入-正确的方法是使用SQL参数 看看:
正如您所知,这是一种危险的查询方式,因为如果有人知道如何删除您的整个数据库,那么这很可能有一天会发生 在回答您的原始问题时,您可以对值进行HTML编码:
string htmlEncodedMessage = Server.HtmlEncode(mymessage);
string Query1 =
"UPDATE message SET message = '" + htmlEncodedMessage + "' " +
"WHERE operationType = '" + value_operationType + "' " +
"AND languageType = '" + value_languageType + "';";
我强烈建议您查看其他数据库操作方法,例如LINQ到SQL。为了回答我的问题,因为coleague能够提供它,解决方案是在web.config上添加以下一行:
<system.web>
...
<httpRuntime requestValidationMode="2.0" />
...
</system.web>
...
...
谢谢