.NET / SQL中的参数表名称?

前端之家收集整理的这篇文章主要介绍了.NET / SQL中的参数表名称?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
正如主题所示,我希望能够使用.NET传递表名称(无论使用哪种语言)和sql Server.

我知道如何做这个值,例如command.Parameters.AddWithValue(“whatever”,无论如何)在查询中使用@whatever来表示参数.事情是我处于某种情况,我希望能够与查询的其他部分(如列和表名称)一起执行此操作.

这不是一个理想的情况,但它是我必须使用的,它不是真的很容易sql注入,因为只有使用代码的人可以设置这些表名,而不是最终用户.这是凌乱的.

那么我正在询问可能吗?

编辑:要清楚sql注入的意义,表名只能通过源代码传递,具体取决于具体情况.是指定这个的开发者.开发人员无论如何都可以访问数据库层,所以我问的原因不在于安全性,只是为了使代码更清洁.

解决方法

我不认为我曾经看到过我所见过的任何sql方言中的这种能力,但这不是专业领域.

我建议将字符限制为AZ,az,0-9,’.’,’_’和” – 然后使用任何适当的包围数据库(例如,[sql Server的相关信息])来包装整个事情.然后直接将它放在sql中.

这不是完全清楚你不是一个sql注入风险的意思 – 你的意思是名字将在源代码中,只有源代码?如果是这样,我同意让事情变得更好.您可能甚至不需要自动执行包围,如果您信任您的开发人员不要成为cretins(故意或不是).

原文链接:https://www.f2er.com/mssql/75527.html

猜你在找的MsSQL相关文章