我想检查选择语句(字符串)有效或不在c#.net,如果选择语句是正确的然后检索数据和填充下拉列表框其他下拉应该是空检查选择语句是否有效或不在c#.net
回答
select语句多久会失效?似乎围绕SQL执行的简单try/catch块可能就足够了。
顺便说一句,我希望你是不是做一个应用程序,可以让别人任意SQL输入到一个盒子,你会再执行...
可能会出现这样的情况:只执行SQL并处理错误是不安全的 - 假设您没有完全控制正在执行的SQL。在这种情况下,如果SQL非常糟糕(比如TRUNCATE TABLE语句),那么可能不会抛出错误,但它会执行恶意语句。因此,我认为在这种情况下按照我的答案中概述的步骤是最安全的。 – AdaTheDev 2010-06-02 13:55:14
@AdaTheDev - 的确,这就是为什么我对允许某人输入任意SQL的评论。非常危险。 – 2010-06-02 14:47:16
一种方法覆盖大多数情况下被执行SQL与SET FMTONLY ON
例如
SET FMTONLY ON;
SELECT SomeField FROM ExampleQuery
从BOL,SET FMTONLY:只有
元数据返回给客户端。 可以用于测试 响应的格式,但不实际运行 query.query。
如果查询无效,则会出错。您还可以检查结果以确定返回的结果集的模式是什么(即没有模式=不是SELECT语句)。
更新: 总体而言与SQL打交道要防止SQL注入有你应该考虑其他的事情时:
- 避免动态SQL(串联用户输入的值成一个要执行的SQL字符串)。改用参数化的SQL。
将查询封装为嵌套查询。例如
SELECT * FROM(SELECT一些东西ADynamicQueryThatsBeenGenerated)×
因此,如果查询包含多个命令,这将导致一个错误。即当封装为嵌套查询时,这将导致无效查询:
SELECT SomethingFrom FROM MyTable;TRUNCATE TABLE MyTable
'SELECT SomethingFrom FROM MyTable); TRUNCATE TABLE MyTable; - ' – SLaks 2010-06-02 17:04:03
- 1. 在C#中选择语句#
- 2. 检查JSON和XML是否有效? c#
- 3. 如果语句不检查每个值是否被选中
- 4. xcode检查您选择的身份是否有效
- 5. jQuery的多项选择选项 - 检查是否选择一个选项或不
- 6. JS检查是否有一个值在选择多种选择
- 7. 检查表中是否存在if语句在C#中?
- 8. 检查cherrypy是否有效
- 9. 检查BitmapData是否有效
- 10. 选择Case语句,检查NULL和/或空字符串
- 11. 选择列或if语句
- 12. 检查JFileChooser是否有一个或多个文件选择
- 13. 低效IEnumerable在XDocument上选择语句
- 14. 在LINQ效率选择语句
- 15. 检查INSERT INTO语句是否成功
- 16. 错误检查是否语句
- 17. 检查SQL语句中是否小写
- 18. 有没有办法检查(文件)句柄是否有效?
- 19. 这是检查它是否是Multiple If或有ArrayList检查的有效方法
- 20. 如何检查值是否正确选择(或不)通过JavaScript?
- 21. 如何使用python语句来检查sql表是否存在或不存在。
- 22. 检查字段是否在选择
- 23. 选择查询选择语句
- 24. Noob查询有关xsl:选择语句
- 25. 检查C++指针是否有效(在Objective-C(++)中)
- 26. 检查DirectoryEntry在DirectorySearcher中是否有效
- 27. 检查是否有点设置或不
- 28. 检查用户是否选择图像或不在图像查看
- 29. 检查是否选择了任何收音机或复选框
- 30. 是否有可能建立我的查询只有一个选择语句?
这个问题没有意义。 – SLaks 2010-06-02 13:19:27
您将更多的努力投入到您的问题中,您获得的答案的质量和数量就会越大。至少可以说这是不清楚的。 – 2010-06-02 13:21:07
我删除了大部分标签,因为它们不正确或无意义。请解释一下自己,然后有人可以适当地重新提出问题。 – slugster 2010-06-02 13:21:12