5

如何在 Informix 中获取查询的执行计划?

我需要类似于我在 Oracle 中explain plan或在 SQL Server 中使用set showplan_all on.

如果这很重要,我正在从 .NET 应用程序(使用 IBM.Data.Informix)连接。

谢谢!

4

2 回答 2

4

在您的 SQL 中,您可以:

  • executeSET EXPLAIN ON; 这将一直有效,直到您断开连接或执行等效OFF语句。至少可以追溯到 v7,甚至可以在 v5 中工作。
  • 添加一个优化器指令(从 v9 开始),即SELECT {+EXPLAIN} foo, bar FROM .... 您还可以SELECT --+EXPLAIN \n foo bar ...根据 SQL 的确切语法使用(您不能关闭 -- 注释,它会运行到行尾)。此变体仅对该SELECT语句有效。

解释文件的写入位置很大程度上取决于数据库服务器的操作系统。它可以是您用户的主目录,也可以是$INFORMIXDIR.

于 2009-07-21T04:20:05.387 回答
0

哪个版本的 Informix?

有一些与 v10 相关的信息,用于 [ SET EXPLAIN]。

于 2009-07-21T02:56:37.517 回答