没有好办法!基本上,您需要执行该语句; 没有-l标志.
两种常用方法是:
这些都不适合我.我发现唯一合适的通用解决方案是创建一个测试套件,以真实的方式创建临时表,然后对它们执行查询:
CREATE TEMPORARY TABLE users_test LIKE users;
CREATE TEMPORARY TABLE auth_test LIKE auth;
Run Code Online (Sandbox Code Playgroud)
您实际上可以忘记制作这些临时工并将它们保存在'_test'数据库中,并在适当时更改您的DSN.
否则,您需要对查询进行参数化,以便在必要时告诉它使用"_test"表.
这远非理想,但它是我发现的最佳解决方案,因为它快速执行查询(没有数据加入/决定)并且不影响数据库.
如果有人证明我错了并指向一个接受字符串并返回TRUE或错误消息的MySQL Parser,我会很高兴.
跑步EXPLAIN SELECT \xe2\x80\xa6
它将解析您的查询并向您显示执行计划(它将使用哪些算法来执行您的查询,以及按什么顺序)。
\n\n这本身就是一件好事,即总是这样做,而不仅仅是为了验证。
\n\n这将帮助您了解幕后发生的事情并构建更有效的查询。
\n| 归档时间: |
|
| 查看次数: |
5623 次 |
| 最近记录: |