План запросов Informix - PullRequest
5 голосов
/ 21 июля 2009

Как я могу получить план выполнения запроса в Informix?

Мне нужно что-то похожее на то, что я получаю в Oracle с explain plan или в SQL Server с set showplan_all on.

Я подключаюсь из приложения .NET (используя IBM.Data.Informix), если это важно.

Спасибо!

Ответы [ 2 ]

4 голосов
/ 21 июля 2009

В вашем SQL вы можете:

  • execute SET EXPLAIN ON; Это будет действовать до тех пор, пока вы не отключите или не выполните эквивалентный оператор OFF. Работает, по крайней мере, еще до v7, может даже работать в v5.
  • добавить директиву оптимизатора (начиная с версии 9), т.е. SELECT {+EXPLAIN} foo, bar FROM .... Вы также можете использовать SELECT --+EXPLAIN \n foo bar ... в зависимости от точного синтаксиса вашего SQL (вы не можете закрыть - комментарий, он работает до конца строки). Этот вариант действует только для этого оператора SELECT.

Где написан файл объяснения, во многом зависит от ОС сервера базы данных. Это может быть домашний каталог вашего пользователя или каталог в $INFORMIXDIR.

0 голосов
/ 21 июля 2009

Какая версия Informix?

Некоторая информация относится к v10, для [SET EXPLAIN].

...