高速トランザクション処理基盤 TP1/EE/Extended Data Cache SQLプログラミング
XDBでのデータベースの定義,操作およびAPの制御は,SQLと呼ばれるデータベース言語の機能を用いて行います。XDBでのSQLの機能体系を次の図に示します。
機能体系ごとのSQLの分類および機能を次の表に示します。
表1-1 機能体系ごとのSQLの分類および機能
| 項番 | 分類 | SQL | 機能 |
|---|---|---|---|
| 1 | 定義系SQL | CREATE INDEX(インデクスの定義) | 表の列にインデクスを定義します。 |
| CREATE TABLE(表の定義) | 表を定義します。 | ||
| 2 | 操作系SQL | CLOSE(カーソルのクローズ) | カーソルを閉じ,FETCH文による検索結果の取り出しを終わらせます。 |
| 3 | DECLARE CURSOR(カーソルの宣言) | 問合せ指定の検索結果をFETCH文で1行ずつ取り出すために,カーソルを宣言します。 | |
| 4 | DELETE(行の削除) | 指定した探索条件を満たす行を表から削除します。 | |
| 5 | FETCH(行の取り出し) | 取り出す行を示すカーソルの位置を次の行に進めます。 | |
| 6 | INSERT(行の挿入) | 表に行を挿入します。 直接,値を指定して一つの行を挿入できます。 |
|
| 7 | OPEN(カーソルのオープン) | カーソルを開きます。 検索結果の先頭の行の直前にカーソルを位置づけて,検索結果を取り出せる状態にします。 |
|
| 8 | SELECT(表の検索) | 表のデータを検索します。 | |
| 9 | 1行SELECT(表の1行検索) | 表のデータを検索します。 表から1行だけデータを取り出す場合は,カーソルを使用しないでデータを取り出す1行SELECT文を指定します。 |
|
| 10 | UPDATE(行の更新) | 指定した探索条件を満たす行の指定した列の値を更新します。 | |
| 11 | 埋め込み言語 | BEGIN DECLARE SECTION(埋め込みSQLの開始宣言) | 埋め込みSQL宣言節の始まりを示します。 埋め込みSQL宣言節には,SQL中で使用する埋め込み変数および標識変数を指定します。 |
| 12 | COPY(登録集原文の引き込み) | 登録集原文をソースプログラム中に引き込みます。 | |
| 13 | END DECLARE SECTION(埋め込みSQLの終了宣言) | 埋め込みSQL宣言節の終わりを示します。 | |
| 14 | END-EXEC(SQL終了子) | SQLの終わりを示します。 | |
| 15 | EXEC SQL(SQL先頭子) | SQLの始まりを示します。 | |
| 16 | SQLCODE変数 | SQLの実行後,XDBから返されるリターンコードを受け取ります。 | |
| 17 | WHENEVER(埋め込み例外宣言) | SQLの実行後,XDBがSQL連絡領域に設定したリターンコードによって,UAPの処理を宣言します。 |
定義系SQLのSQL文種別と実行可能なインタフェースを次の表に示します。
表1-2 SQL文種別と実行可能なインタフェース(定義系SQL)
| 項番 | SQL文種別 | インタフェース | ||
|---|---|---|---|---|
| XDBサービス定義 | eexdbsqlコマンド | UAPでの使用 | ||
| 1 | CREATE INDEX | ○ | × | × |
| 2 | CREATE TABLE | ○ | × | × |
操作系SQLのSQL文種別と実行可能なインタフェースを次の表に示します。
表1-3 SQL文種別と実行可能なインタフェース(操作系SQL)
| 項番 | SQL文種別 | インタフェース | ||
|---|---|---|---|---|
| XDBサービス定義 | eexdbsqlコマンド | UAPでの使用 | ||
| 1 | CLOSE | × | × | ○ |
| 2 | DECLARE CURSOR | × | × | ○ |
| 3 | DELETE | × | ○ | ○ |
| 4 | FETCH | × | × | ○ |
| 5 | INSERT | × | ○ | ○ |
| 6 | OPEN | × | × | ○ |
| 7 | SELECT | × | ○ | × |
| 8 | 1行SELECT | × | × | ○ |
| 9 | UPDATE | × | ○ | ○ |
埋め込み言語は埋め込み型のUAPで使用できます。
All Rights Reserved. Copyright (C) 2008, Hitachi, Ltd.