2015-12-29 5 views
0

У меня есть инструкция SQL в строке, и я хочу попробовать ее, но не выполнив ее. Другими словами, я хочу, чтобы при выполнении позже в моей базе данных возвращалось что-то, даже нулевое. Операторы SQL для запроса - это запросы (выберите). Я использую PHP с postgresql.Как проверить инструкцию SQL без ее выполнения

+2

Так почему вы cant't выполнить запрос и посмотреть, работает ли он? Это как ... Я не могу открыть глаза, но я хочу посмотреть. –

+1

Да, это не похоже на его обновление или вставку. Каков вред в его запуске? – AbraCadaver

+0

Даже если вы протестируете его сейчас, вы не сможете - в общем - убедитесь, что он вернет что-то позже. Наборы результатов могут зависеть от времени выполнения, от изменений в базе данных между тобой и потом ... – trincot

ответ

2

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