ANSI Sql查询强制返回0条记录
我正在寻找ANSI-SQL方法来执行Select查询而不返回任何记录,但填充了TDataSet的Fields结构. 我找到的方法是在任何查询中添加“where 1 = 0”,例如:
这是一个相当简单的例子,当我必须处理用户输入的查询,然后解析它们,删除where子句(如果它已经有一个)并且替换为“1 = 0”时,它变得有点复杂. 如果用户输入的查询中的最后一个子句是where子句,那么根本没有问题,但是更复杂的查询如下:
通过使用“where 1 = 0”方法,在前一个示例中插入它的唯一方法是使用一个相当强大的SQL解析器(记住用户可以输入复杂查询,包括子查询,以及所有这些),谁能理解哪里包括这个字符串. 有谁知道更好的方法吗?我不能使用“限制1”,因为它必须采用ANSI方式. 最佳答案 如何在用户的SELECT周围添加自己的SELECT?
编辑:ORDER BY不适用于该解决方案,但由于没有行,您可以尝试在必要时从查询中删除它. 【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。 |
-
我想编写并执行一个将执行多个其他.sql文件的mysql .s...[详细]
-
我可能没有大脑的时刻. 我想从数据库中的两个字段使用...[详细]
-
在具有多个条件的MySQL中使用group by子句的正确方法是什么?
我正在编写一个查询,如果每个专业的平均成绩均超过80,...[详细]
-
如何使用CASE WHEN在MySQL和PDO中运行更新查询. 以下...[详细]
-
我的MySQL数据库中有一个表格Books,其标题列(varchar(...[详细]
-
我在重新导入mysqldump创建的数据库转储时遇到问题.我...[详细]
-
MS SQL 2005 Express已经存在时,在Windows Server 2003上安装myS
[编辑] 我应该注意,我需要在实时生产服务器上执行此操...[详细]
-
我正在编写一个perl脚本来解析mysql数据库模式并在必...[详细]
-
我正在尝试通过Kohana的ORM库在MySQL表中创建和检索BL...[详细]
-
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站...[详细]