ルーチンで使用する SQL ステートメントのデータ・アクセスの種別
特定の SQL ステートメントは、ストアード・プロシージャーまたはユーザー定義関数で実行できます。 実行できるステートメントは、ルーチンの定義に使用した SQL データ・アクセスのレベルに応じて異なります。
下記の表は、SQL ステートメント (第 1 列で指定されている) を、 指定された SQL データ・アクセス種別を使用してルーチンで実行できるかどうかを示します。 Y は はい (yes) を意味します。
一般に、NO SQL として定義されているルーチンで実行可能な SQL ステートメントが見つかった場合には、SQLSTATE 38001 が戻されます。 ルーチンの定義で、あるレベルの SQL アクセスが許されている場合、 コンテキストでサポートされていない SQL ステートメントは SQLSTATE 38003 を 戻します。 CONTAINS SQL として定義されているルーチンで許されていない SQL ステートメントの場合は SQLSTATE 38004 を戻し、READS SQL DATA で許されていない SQL ステートメントの場合は SQLSTATE 38002 を戻します。
| SQL ステートメント | SQL データ・アクセスのレベル | |||
|---|---|---|---|---|
| NO SQL | CONTAINS SQL | READS SQL DATA | MODIFIES SQL DATA | |
| ALLOCATE CURSOR | Y | Y | ||
| ALTER | Y | |||
| ASSOCIATE LOCATORS | Y | Y | ||
| BEGIN DECLARE SECTION | 1 1 | Y | Y | Y |
| CALL | 2 う | 2 う | 2 う | |
| CLOSE | Y | Y | ||
| COMMENT | Y | |||
| COMMIT | Y | Y | Y | |
| CONNECT | Y | Y | Y | |
| CREATE | Y | |||
| DECLARE CURSOR | 1 1 | Y | Y | Y |
| DECLARE GLOBAL TEMPORARY TABLE | Y | |||
| DECLARE STATEMENT | 1 1 | Y | Y | Y |
| DECLARE TABLE | 1 1 | Y | Y | Y |
| DECLARE VARIABLE | 1 1 | Y | Y | Y |
| DELETE | Y | |||
| DESCRIBE | Y | Y | ||
| DESCRIBE CURSOR | Y | Y | ||
| DESCRIBE INPUT | Y | Y | ||
| DESCRIBE OUTPUT | Y | Y | ||
| DESCRIBE PROCEDURE | Y | Y | ||
| DESCRIBE TABLE | Y | Y | ||
| DROP | Y | |||
| END DECLARE SECTION | 1 1 | Y | Y | Y |
| EXCHANGE | Y | |||
| EXECUTE | 3 よ | 3 よ | Y | |
| EXECUTE IMMEDIATE | 3 よ | 3 よ | Y | |
| EXPLAIN | Y | |||
| FETCH | Y | Y | ||
| FREE LOCATOR | Y | Y | Y | |
| GET DIAGNOSTICS | Y | Y | Y | |
| GRANT | Y | |||
| HOLD LOCATOR | Y | Y | Y | |
| INCLUDE | 1 1 | Y | Y | Y |
| INSERT | Y | |||
| ラベル | Y | |||
| LOCK TABLE | Y | Y | Y | |
| MERGE | Y | |||
| OPEN | Y | Y | ||
| PREPARE | Y | Y | Y | |
| REFRESH TABLE | Y | |||
| RELEASE 接続 | Y | Y | Y | |
| RELEASE SAVEPOINT | Y | |||
| RENAME | Y | |||
| REVOKE | Y | |||
| ROLLBACK | Y | Y | Y | |
| ROLLBACK TO SAVEPOINT | Y | |||
| SAVEPOINT | Y | |||
| SELECT INTO | Y | Y | ||
| SET CONNECTION | Y | Y | Y | |
| SET 代入ステートメント | 4 よ | Y | Y | |
| SET 特殊レジスター | Y | Y | Y | |
| SIGNAL | Y | Y | Y | |
| TRUNCATE | Y | |||
| UPDATE | Y | |||
| VALUES | Y | Y | ||
| VALUES INTO | 4 よ | Y | Y | |
| WHENEVER | 1 1 | Y | Y | Y |
注:
|
||||