SELECT ステートメントの静的呼び出し

SELECT ステートメントは異なる方法で静的に呼び出すことができます。

SELECT ステートメントは、(実行不能) ステートメント DECLARE CURSOR の 一部として組み込むことができます。 このようなステートメントは、(組み込み) ステートメント OPEN を 使ってカーソルをオープンするたびに実行されます。 カーソルがオープンされた後は 、(組み込み) SQL FETCH ステートメントを連続して実行し、 結果表を一度に 1 行ずつ取り出していくことができます。

アプリケーションが Db2 for z/OS® ODBC を使用している場合、SELECT 文はまず SQLPrepare 関数呼び出しで準備されます。 SELECT ステートメントは、それから SQLExecute 関数呼び出しで 実行されます。 データは、それから SQLFetch 関数呼び出しで フェッチされます。 アプリケーションはカーソルを明示的にオープンしません。

この方法で使用する SELECT ステートメントには、ホスト変数 に対する参照を含めることができます。 これらの参照は、その変数が OPEN の実行時に持っている値に よって、事実上置き換えられます。

SELECT ステートメントの実行が成功したか失敗したかは 、OPEN の後で SQLCA 内の SQLCODE と SQLSTATE のフィールドに戻される値により 示されます。 組み込みステートメントのところで前述したように、これらの フィールドの検査が必要になります。

アプリケーションが Db2 for z/OS ODBC を使用している場合、SELECT 文の正常な実行は SQLExecute 関数呼び出しからのリターン・コードで示されます。 必要であれば、アプリケーションで SQLGetSQLCA 関数を呼び出して、SQLCA を取り出すことができます。