埋込みSQLコマンドは、DDL、DMLおよびトランザクション制御文を、手続き型言語プログラムに挿入します。Oracleプリコンパイラでは、埋込みSQLをサポートしています。表E-1では、埋込みSQLコマンドおよびディレクティブの機能の概要を示しています。
表E-1の「タイプ」列は、ソース/タイプの形式で表記され、ソースはSQL92標準SQL(S)またはOracle拡張機能(O)のいずれか、タイプは実行可能(E)文またはディレクティブ(D)のいずれかです。
表E-1 埋込みSQLコマンドとディレクティブの概要
EXEC SQL文 | タイプ | 用途 |
---|---|---|
ALLOCATE |
O/E |
カーソル変数にメモリーを割り当てます。 |
CLOSE |
S/E |
カーソルを無効にし、保持されているリソースを解放します。 |
COMMIT |
S/E |
データベースへの変更をすべて確定して、現行のトランザクションを終了します(オプションでリソースを解放し、データベースとの接続を切断します)。 |
CONNECT |
O/E |
Oracleインスタンスに接続します。 |
DECLARE CURSOR |
S/D |
問合せに対応付けてカーソルを宣言します。 |
DECLARE DATABASE |
O/D |
後続の埋込みSQL文でアクセスされるデフォルト以外のデータベースの識別子を宣言します。 |
DECLARE STATEMENT |
S/D |
SQL文にSQL変数名を割り当てます。 |
DECLARE TABLE |
O/D |
Oracleプリコンパイラで埋込みSQL文の意味検査に使用される表構造を宣言します。 |
DELETE |
S/E |
表またはビューの実表から行を削除します。 |
DESCRIBE |
S/E |
記述子(ホスト変数の説明を保持している構造体)を初期化します。 |
EXECUTE...END-EXEC |
O/E |
無名PL/SQLブロックを実行します。 |
EXECUTE |
S/E |
準備済の動的SQL文を実行します。 |
EXECUTE IMMEDIATE |
S/E |
ホスト変数を持たないSQL文を準備して実行します。 |
FETCH |
S/E |
問合せで選択した行を取り出します。 |
INSERT |
S/E |
表またはビューの実表に行を追加します。 |
OPEN |
S/E |
カーソルに対応付けられた問合せを実行します。 |
PREPARE |
S/E |
動的SQL文を解析します。 |
ROLLBACK |
S/E |
現行のトランザクションを終了し、現行のトランザクションで加えられた変更をすべて破棄し、ロックをすべて解除します(オプションでリソースを解放し、データベースとの接続を切断します)。 |
SAVEPOINT |
S/E |
後でロールバックする位置をトランザクション内に指定します。 |
SELECT |
S/E |
選択した値をホスト変数に割り当てて、1つ以上の表、ビューまたはスナップショットからデータを取り出します。 |
UPDATE |
S/E |
表またはビューの実表の既存の値を変更します。 |
VAR |
O/D |
デフォルトのデータ型をオーバーライドし、特定のOracleデータ型をホスト変数に割り当てます。 |
WHENEVER |
S/D |
エラー状態および警告状態の処置を指定します。 |