如何在不执行SQL语句的情况下测试它


How to test an SQL statement without executing it

我在字符串中有一个SQL语句,我想尝试它,但不执行。换句话说,我希望确保稍后在数据库中执行时返回一些东西,甚至是null。要尝试的SQL语句是查询(选择)。我使用的是带有postgresql的PHP。

explain用于显示执行计划。当在没有analyze选项的情况下发出时,将不会执行:

=> explain select 1;
                QUERY PLAN                
------------------------------------------
 Result  (cost=0.00..0.01 rows=1 width=0)
(1 row)
=> explain select x;
ERROR:  column "x" does not exist
LINE 1: explain select x;

http://www.postgresql.org/docs/current/static/sql-explain.html