スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
リモートデータベースアクセスに使用できるSQL文の詳細を次の表に示します。
なお,個々のSQLの詳細については,マニュアル「HiRDB Version 8 SQLリファレンス」を参照してください。
表12-5 リモートデータベースアクセスに使用できるSQL文の詳細
| 区分 | SQL文の形式 | 分散サーバでの使用可否 | ||||
|---|---|---|---|---|---|---|
| HiRDB | XDM/ RD |
ORACLE | RDB1 E2 |
SQL/K | ||
| 変数 | {:埋込み変数〔:標識変数〕
| ?パラメタ}
|
○※9 | ○※9 | ○※9 | ○※9 | ○※9 |
| 表名 | RDノード名称.認可識別子. 表識別子 |
○※1 | ○※1 | ○※1 | ○※1 | ○※1 |
〔認可識別子.〕表別名 |
○※1 | ○※1 | ○※1 | ○※1 | ○※1 | |
〔認可識別子.〕表識別子 |
○※2 | ○※2 | ○※2 | ○※2 | ○※2 | |
| 表指定 | { 〔認可識別子.〕表識別子 |
相関名}
|
○※3 | ○※3 | ○ | ○※3 | ○※3 |
| 列指定 | 〔表指定.〕列名 |
○ | ○ | ○ | ○ | ○ |
〔表指定.〕繰返し列名 [添字] |
○ | × | × | × | × | |
| 値指定 | {定数 | 変数 | USER
|
○ | ○ | ○ | ○ | ○※4 |
| CURRENT_DATE | CURRENT_TIME |
○ | ○ | × | × | × | |
| 〔文ラベル.〕SQL変数名 | 〔〔認可識別子.〕 ルーチン識別子.〕 SQLパラメタ名} |
× | × | × | × | × | |
| 項目指定 | {列指定
|
○ | ○ | ○ | ○ | ○ |
| 〔文ラベル.〕 SQL変数名 | 〔〔認可識別子.〕 ルーチン識別子.〕 SQLパラメタ名} |
× | × | × | × | × | |
| 集合関数 | AVG,SUM,MAX,MIN, COUNT |
○ | ○ | ○ | ○ | ○ |
| スカラ関数 | VALUE |
○ | ○ | × | × | × |
DATE,TIME,YEAR, MONTH,DAY, HOUR,MINUTE, SECOND,DAYS, |
○ | ○ | × | × | × | |
DECIMAL,DIGITS, FLOAT,INTEGER, CHARACTER,HEX, |
○ | ○ | × | × | × | |
LENGTH,SUBSTR |
○ | ○※5 | ○※5 | × | × | |
| ラベル付き 間隔 |
(値式) {YEAR〔S〕
| MONTH〔S〕
| DAY〔S〕 }
|
○ | ○ | × | × | × |
| 一次子 | {(値式) | 列指定 | 値指定
| 集合関数 | スカラ関数
|
○ | ○ | ○ | ○ | ○※4 |
| ラベル付き間隔} |
○ | ○ | × | × | × | |
| 値式 | { 〔{+|-} 〕一次子
| 値式{+|-|*|/|‖}一次子}
|
○ | ○ | ○ | ○※4 | ○※4 |
| 比較演算子 | {=|<>|<|<=|>|>=}
|
○ | ○ | ○ | ○ | ○※4 |
| 述語 | {値式 IS〔NOT〕NULL
|
○ | ○ | ○ | ○ | ○※4 |
| 値式〔NOT〕LIKE値指定 |
○ | ○ | ○ | ○ | ○※4 | |
| 値式〔NOT〕BETWEEN値式 AND値式 |
○ | ○ | ○ | ○ | ○※4 | |
| 値式〔NOT〕IN{(値指定
〔,値指定〕…)|副問合せ}
|
○ | ○ | ○ | ○ | ○※4 | |
| 値式 比較演算子 値式 |
○ | ○ | ○ | ○ | ○ | |
| 値式 比較演算子 副問合せ |
○ | ○ | ○ | × | × | |
| 値式 比較演算子
{ANY|ALL|SOME}副問合せ
|
○ | ○ | ○ | × | × | |
| EISTS 副問合せ |
○ | ○ | ○ | × | × | |
| 項目指定 〔NOT〕 XLIKE パターン文字 |
○ | × | × | × | × | |
| ARRAY (繰返し列名〔,繰返し列名〕…) [ANY] (探索条件) |
○ | × | × | × | × | |
| 項目指定 〔NOT〕 SIMILAR TO パターン文字列} |
○ | × | × | × | × | |
| 探索条件 | { 〔NOT〕{(探索条件)|述語}
|
○ | ○ | ○ | ○ | ○※4 |
| 探索条件 OR{(探索条件)
|述語}
|
○ | ○ | ○ | ○ | ○ | |
| 探索条件 AND{(探索条件)|
述語}}
|
○ | ○ | ○ | ○ | ○ | |
| 選択式 | {値式(変数を除く)|表指定.*
|
○ | ○ | ○ | ○ | ○ |
| 〔表指定.〕ROW} |
× | × | × | × | × | |
| 問合せ指定 | SELECT〔{ALL|DISTINCT}〕
|
○ | ○ | ○ | ○ | × |
{*|選択式〔.選択式〕}
|
○ | ○ | ○ | ○ | ○ | |
FROM 表名〔.表名〕… |
○ | ○ | ○ | ○ | ○ | |
〔WHERE 探索条件〕 |
○ | ○ | ○ | ○ | ○ | |
〔GROUP BY 列指定〕 |
○ | ○ | ○ | ○ | ○ | |
〔HAVING 探索条件〕 |
○ | ○ | ○ | ○ | ○ | |
| 問合せ式 | {問合せ指定|(問合せ式)
|問合せ式 UNION〔ALL〕
{問合せ指定|(問合せ式)}}
|
○ | ○ | ○ | × | × |
| 静的カーソル宣言 | DECLARE カーソル名 CURSOR FOR 問合せ式 |
○ | ○ | ○ | ○※6 | ○※6 |
〔ORDER BY
{列指定|ソート項目指定番号}
〔{ASC|DESC}〕
〔,{列指定|ソート項目指定番号}
〔{ASC|DESC}〕〕…〕
|
○ | ○※7 | ○ | ○※7 | ○※7 | |
〔{WITH{SHARE|EXCLUSIVE}LOCK
|
○ | ○ | × | × | × | |
|WITHOUT LOCK 〔{WAIT|NOWAIT}〕}〕
|
○ | ○ | × | ○ | × | |
〔{WITH ROLLBACK
|
○ | ○ | × | ○ | × | |
|NO WAIT}〕 |
○ | × | × | × | × | |
〔FOR{UPDATE〔OF 列名
〔,列名〕…〕
|
○ | ○ | ○ | ○ | ○ | |
|READ ONLY}〕 |
○ | ○ | × | × | × | |
| 動的カーソル宣言 | DECLARE カーソル名 CURSOR FOR 動的SELECT文を示す SQL識別子 |
○ | ○ | ○ | ○ | ○ |
| 動的SELECT文 形式1 |
問合せ式 |
○ | ○ | ○ | ○※6 | ○※6 |
〔ORDER BY
{列指定|ソート項目指定番号}
〔{ASC|DESC}〕
〔,{列指定|ソート項目指定番号}
〔{ASC|DESC}〕〕…〕
|
○ | ○※7 | ○ | ○※7 | ○※7 | |
〔{WITH{SHARE
|EXCLUSIVE}LOCK
|
○ | ○ | × | × | × | |
|WITHOUT LOCK
〔{WAIT|NOWAIT}〕}〕
|
○ | ○ | × | ○ | × | |
〔{WITH ROLLBACK
|
○ | ○ | × | ○ | × | |
|NO WAIT}〕 |
○ | × | × | × | × | |
〔FOR UPDATE〕 |
○ | ○ | ○ | ○ | ○ | |
| 動的SELECT文 形式2 |
SELECT {{列名
|繰返し列〔[添字]〕
|列名..属性名〔..属性名〕…}
〔,{{列名
|繰返し列〔[添字]〕
|列名..属性名〔..属性名〕…}〕…
|*}
FROM LIST リスト名
〔排他オプション〕
|
× | × | × | × | × |
| ASSIGN LIST文 形式1 |
ASSIGN LIST リスト名
FROM (〔認可識別子.〕表識別子)
〔WHERE 探索条件〕
〔WITHOUT LOCK〔{WAIT|NOWAIT}〕〕
〔WITH ROLLBACK|NO WAIT〕
|
× | × | × | × | × |
| ASSIGN LIST文 形式2 |
ASSIGN LIST リスト名
FROM リスト名1
〔{{AND|OR|AND NOT|ANDNOT}リスト名2
|FOR ALTERLIST〕
|
× | × | × | × | × |
| DROP LIST文 | DROP {LIST リスト名|ALL LIST}
|
× | × | × | × | × |
| OPEN文 形式1 |
OPEN カーソル名 〔USING:埋込み変数 〔,埋込み変数〕…〕 |
○ | ○ | ○ | ○ | ○ |
| OPEN文 形式2 |
OPEN カーソル名 USING DESCRIPTOR 〔:〕 SQL記述領域名 |
○ | ○ | ○ | ○ | ○ |
| CLOSE文 | CLOSE カーソル名 |
○ | ○ | ○ | ○ | ○ |
| FETCH文 形式1 |
FETCH カーソル名 INTO 変数〔,変数〕… |
○ | ○ | ○ | ○ | ○ |
| FETCH文 形式2 |
FETCH カーソル名 USING DESCRIPTOR 〔:〕 SQL記述領域名 |
○ | ○ | ○ | ○ | ○ |
BY 変数 〔ROWS〕 |
× | × | × | × | × | |
| FETCH文 形式3 |
FETCH カーソル名 INTO 配列変数〔,配列変数〕… |
× | × | × | × | × |
| 1行SELECT文 | SELECT〔{ALL|DISTINCT}〕
{*|選択式〔,選択式〕…}
INTO 変数〔,変数〕…
FROM 表名〔,表名〕…
〔WHERE 探索条件〕
〔GROUP BY 列指定〕
〔HAVING 探索条件〕
|
○ | ○ | ○ | ○ | × |
〔{WITH{SHARE
|EXCLUSIVE}LOCK
|
○ | ○ | × | × | × | |
|WITHOUT LOCK 〔{WAIT|NOWAIT}〕}〕
|
○ | ○ | × | ○ | × | |
〔{WITH ROLLBACK
|
○ | ○ | × | ○ | × | |
|NO WAIT}〕 |
○ | × | × | × | × | |
| 挿入値 | {値指定|NULL}
|
○ | ○ | ○ | ○ | ○※4 |
| INSERT文形式1 | INSERT INTO 表名〔(列名
〔,列名〕…)〕
{VALUES(挿入値〔,挿入値〕…)
|問合せ指定}
|
○ | ○ | ○ | ○ | ○ |
〔WITH ROLLBACK〕 |
○ | ○ | × | ○ | × | |
| INSERT文形式2 | INSERT INTO 表名(ROW)
{VALUES(行挿入値)
|問合せ指定}
〔WITH ROLLBACK〕
|
× | × | × | × | × |
| INSERT文形式3 | FOR 変数
INSERT INTO 表名〔(列名〔,列名〕…)〕
{VALUES (挿入値〔,挿入値〕…)
|問合せ指定}
〔WITH ROLLBACK〕
|
× | × | × | × | × |
| INSERT文形式4 | FOR 変数
INSERT INTO 表名(ROW)
{VALUES (行挿入値)|問合せ指定}
〔WITH ROLLBACK〕
|
× | × | × | × | × |
| 更新値 | {値式|NULL}
|
○ | ○ | ○ | ○ | ○※4 |
| UPDATE文形式1 | UPDATE 表名
SET 列名=更新値
〔,列名=更新値〕…
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
|
○ | ○ | ○ | ○ | ○ |
UPDATE 表名
SET 繰返し列名[{添字|*}]
=要素の値
〔,繰返し列名[{添字|*}]
=要素の値〕…
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
|
○ | × | × | × | × | |
UPDATE 表名
ADD 繰返し列名[{添字|*}]
=ARRAY[要素の値
〔,要素の値〕…]
〔,繰返し列名[{添字|*}]
=ARRAY[要素の値
〔,要素の値〕…]〕…
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
|
○ | × | × | × | × | |
UPDATE 表名
DELETE 繰返し列名[{添字|*}]
〔,繰返し列名[{添字|*}]〕…
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
|
○ | × | × | × | × | |
〔WITH ROLLBACK〕 |
○ | ○ | × | ○ | × | |
| UPDATE文形式2 | UPDATE 表名
SET ROW=変数
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
〔WITH ROLLBACK〕
|
× | × | × | × | × |
| UPDATE文形式3 | FOR 変数 UPDATE 表名 SET 列名=更新値〔,列名=更新値〕… 〔WHERE 探索条件〕 〔WITH ROLLBACK〕 |
× | × | × | × | × |
| UPDATE文形式4 | FOR 変数 UPDATE 表名 SET ROW=変数 〔WHERE 探索条件〕 〔WITH ROLLBACK〕 |
× | × | × | × | × |
| DELETE文形式1 | DELETE FROM 表名
〔WHERE{探索条件
|CURRENT OF カーソル名}〕
|
○ | ○ | ○ | ○ | ○ |
〔WITH ROLLBACK〕 |
○ | ○ | × | ○ | × | |
| DELETE文形式2 | FOR 変数 DELETE FROM 表名 WHERE 探索条件 |
× | × | × | × | × |
〔WITH ROLLBACK〕 |
× | × | × | × | × | |
| PREPARE文 | PREPARE SQL文識別子
FROM{'文字列'|変数}
|
○ | ○ | ○ | ○ | ○ |
〔WITH SQLNAME OPTION〕 |
○ | ○ | ○ | × | × | |
| PREPARE文で前処理できるSQL文 | INSERT, UPDATE(カーソルを使わない), DELETE(カーソルを使わない), 動的SELECT文形式1, |
○ | ○ | ○ | ○ | ○ |
PURGE TABLE文, LOCK TABLE文, CALL文 |
○ | × | × | × | × | |
定義系SQL, ASSIGN LIST文, DROP LIST文, 動的SELECT文形式2 |
× | × | × | × | × | |
| DESCRIBE OUTPUT文 | DESCRIBE 〔OUTPUT〕 SQL文識別子 INTO 〔:〕SQL記述領域名 〔〔:〕列名記述領域名〕 |
○ | ○ | ○ | ○ | ○ |
| DESCRIBE INPUT文 | DESCRIBE INPUT SQL文識別子 INTO 〔:〕SQL記述領域名 〔〔:〕列名記述領域名〕 |
○ | × | × | × | × |
| EXECUTE文形式1 | EXECUTE SQL文識別子 |
○ | ○ | ○ | ○ | ○ |
〔{INTO 変数〔,変数〕…
|INTO DESCRIPTOR
〔:〕SQL記述領域名}〕
|
○ | × | × | × | × | |
〔{USING 変数〔,変数〕…
|USING DESCRIPTOR
〔:〕SQL記述領域名}〕
|
○ | ○ | ○ | ○ | ○ | |
| EXECUTE文形式2 | EXECUTE SQL文識別子
{USING 配列変数〔,配列変数〕…
|USING DESCRIPTOR
〔:〕SQL記述領域名}
BY 変数 〔ROWS〕
|
× | × | × | × | × |
| EXECUTE文で実行できるSQL文 | PREPARE文で前処理した, 動的SELECT文以外のSQL文 |
○ | ○ | ○ | ○ | ○ |
| EXECUTE IMMEDIATE文 |
EXECUTE IMMEDIATE{'文字列'|変数}
|
○ | ○ | ○ | × | × |
| EXECUTE IMMEDIATE文で実行できるSQL文 |
INSERT文, UPDATE文(カーソルを使わない), DELETE文(カーソルを使わない), |
○ | ○ | ○ | × | × |
PURGE TABLE文, LOCK TABLE文, CALL文 |
○ | × | × | × | × | |
定義系SQL, ASSIGN LIST文, DROP LIST文 |
× | × | × | × | × | |
| PURGE TABLE文 | PURGE TABLE 表名 〔WITH ROLLBACK |NO WAIT〕 |
○ | × | × | × | × |
| LOCK TABLE文 | LOCK TABLE 表名〔,表名〕…
〔IN {SHARE|EXCLUSIVE}
MODE〕
〔WITH ROLLBACK
|NO WAIT〕
|
○ | × | × | × | × |
UNTIL DISCONNECT |
× | × | × | × | × | |
| CALL文※10 | CALL RDノード名称.認可識別子. ルーチン識別子(引数指定) |
○ | × | × | × | × |
| GET DIAGNOSTICS文 |
GET DIAGNOSTICS... |
○※8 | ○※8 | ○※8 | ○※8 | ○※8 |
| SET SESSION AUTHORIZATION文 | SET SESSION AUTHORIZATION
:埋込み変数1
〔{USING|IDENTIFIED BY}
:埋込み変数2〕
|
× | × | × | × | × |
| FREE LOCATOR文 | FREE LOCATOR :位置付け子参照 〔,:位置付け子参照〕… |
× | × | × | × | × |
| 代入文 | SET 代入先=代入値 |
× | × | × | × | × |
| CALL COMMAND文 | CALL COMMAND
{:埋込み変数1|?パラメタ1|定数1}
〔WITH{:埋込み変数2|?パラメタ2
|定数2}〕
〔INPUT{:埋込み変数3|?パラメタ3
|定数3}〕
〔OUTPUT TO{:埋込み変数4:標識変数1
|?パラメタ4}〕
〔ERROR TO{:埋込み変数5:標識変数2
|?パラメタ5}〕
〔RETURN CODE TO{:埋込み変数6
|?パラメタ6}〕
〔ENVIRONMENT{:埋込み変数7
|?パラメタ7|定数4}〕
〔SERVER{:埋込み変数8|?パラメタ8
|定数5}〕
|
× | × | × | × | × |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.