是否有.Net项目/动态链接库,支持转义用户提供的对各种数据库系统的数据库查询的输入?
我希望我们的整个团队标准化并使用一个模块来对用户提供的输入进行转义,然后在参数化SQL查询中使用这些输入。
理想情况下,我希望指定数据库系统(oracle、SqlServer、mySql等)。并能够调用the (VariableName),它将根据web.config文件中的当前数据库设置对字符串内容进行转义。
如果不是,那么下一个最好的选择就是EscapeForOracle、EscapeForSqlServer等。
该项目至少应支持Oracle、SqlServer和MySql。
我想知道我是否需要在内部创建它,或者是否存在现有的商业/开源产品来实现这一点。
发布于 2009-06-01 22:52:06
我不认为你会需要这样的东西。
运行参数化查询/存储过程时,请使用参数集合。
指定适当的数据类型、长度、精度并提供有效值。
转义将由DB提供程序完成。
如果我没有正确理解你的问题,请告诉我。
发布于 2009-06-01 23:11:47
在.NET中,您可以使用像DbReader和DbConnection这样的泛型类来代替SqlConnection。就像shahkalpesh和Lasse V. Karlsen所说的,你可以使用参数,框架或驱动程序将为你处理转义。
但实际上,如果您希望开发既适用于Oracle又适用于Sql Server的产品,就需要大量的开销。正确的转义只是冰山一角。如果您还没有安装Oracle和Sql server测试服务器,那么您可能还没有启动:)
https://stackoverflow.com/questions/937184
复制相似问题