スケーラブルデータベースサーバ

HiRDB Version 8 SQLリファレンス

文法書

3020-6-357-43


目  次

前書き
変更内容
はじめに

1. 基本項目
1.1 SQLの記述形式
1.1.1 オペランドの指定順序
1.1.2 キーワードの指定
1.1.3 数値の指定
1.1.4 区切り文字の挿入
1.1.5 SQLで使用できる文字
1.1.6 SQLの最大長
1.1.7 名前の指定
1.1.8 名前の修飾
1.1.9 スキーマパス
1.2 データ型
1.2.1 データ型
1.2.2 変換(代入,比較)できるデータ型
1.2.3 文字データ,各国文字データ,及び混在文字データ使用上の注意事項
1.2.4 DECIMAL型使用上の注意事項
1.2.5 長大データ使用上の注意事項
1.2.6 BINARY型使用上の注意事項
1.2.7 論理データ使用上の注意事項
1.2.8 抽象データ型使用上の注意事項
1.3 文字集合
1.4 定数
1.4.1 日付データの既定の文字列表現
1.4.2 時刻データの既定の文字列表現
1.4.3 時刻印データの既定の文字列表現
1.4.4 日間隔データの10進数表現
1.4.5 時間隔データの10進数表現
1.4.6 日時間隔データの10進数表現
1.5 USER,CURRENT_DATE値関数,CURRENT_TIME値関数,及びCURRENT_TIMESTAMP値関数
1.5.1 USER
1.5.2 CURRENT_DATE値関数
1.5.3 CURRENT_TIME値関数
1.5.4 CURRENT_TIMESTAMP値関数
1.6 埋込み変数,標識変数,?パラメタ,SQLパラメタ,及びSQL変数
1.6.1 埋込み変数,標識変数
1.6.2 ?パラメタ
1.6.3 SQLパラメタ,SQL変数
1.6.4 指定できる箇所
1.6.5 標識変数の値の設定
1.6.6 埋込み変数へのナル値の既定値設定
1.6.7 代入規則
1.7 ナル値
1.8 コンポネント指定
1.9 ルーチン
1.9.1 手続き
1.9.2 関数
1.9.3 結果集合返却機能
1.10 外部ルーチン
1.10.1 外部Javaルーチン
1.10.2 外部Cストアドルーチン
1.11 日時書式の指定
1.12 HiRDB External Data Accessとの関係
1.13 インナレプリカ機能使用時の制限
1.14 位置付け子(locator)
1.15 XML型
1.15.1 XML型の記述形式
1.15.2 XMLコンストラクタ関数
1.15.3 SQL/XML スカラ関数
1.15.4 SQL/XML 述語
1.15.5 SQL/XML 集合関数
1.15.6 XML型用定義系SQL
1.16 XQuery
1.16.1 XQueryデータモデル
1.16.2 基本項目
1.16.3 XQueryの指定
1.16.4 XQueryの記述形式
1.16.5 XQuery宣言部
1.16.6 XQuery問合せ本体
1.16.7 XQueryコメント
1.16.8 XQuery関数

2. 構成要素の詳細
2.1 カーソル指定
2.1.1 カーソル指定 形式1
2.1.2 カーソル指定 形式2
2.2 問合せ式
2.2.1 問合せ式 形式1(一般問合せ式)
2.2.2 問合せ式 形式2(繰返し列平坦化問合せ式)
2.3 問合せ指定
2.4 副問合せ
2.5 表式
2.6 表参照
2.7 探索条件
2.7.1 機能
2.7.2 論理演算
2.7.3 述語の結果
2.7.4 述語の共通規則
2.7.5 述語
2.8 行値構成子
2.9 値式,値指定,及び項目指定
2.10 四則演算
2.11 日付演算
2.12 時刻演算
2.13 連結演算
2.14 集合関数
2.15 ウィンドウ関数
2.16 スカラ関数
2.16.1 システム組込みスカラ関数
2.16.2 システム定義スカラ関数
2.16.3 プラグイン定義スカラ関数
2.17 CASE式
2.18 オーバフローエラー抑止が設定されている場合の演算結果
2.18.1 探索条件でオーバフローが発生した場合の例
2.18.2 更新値でオーバフローが発生した場合の例
2.19 排他オプション
2.20 関数呼出し
2.21 内部導出表
2.21.1 内部導出表の条件
2.22 WRITE指定
2.23 GET_JAVA_STORED_ROUTINE_SOURCE指定
2.24 SQL最適化指定
2.24.1 使用インデクスのSQL最適化指定
2.24.2 結合方式のSQL最適化指定
2.24.3 副問合せ実行方式のSQL最適化指定
2.24.4 SQL最適化指定の例
2.25 CAST指定
2.26 拡張文名
2.27 拡張カーソル名
2.28 NEXT VALUE式

3. 定義系SQL
全般規定
ALTER INDEX(インデクス定義変更)
ALTER PROCEDURE(手続きのSQLオブジェクトの再作成)
ALTER ROUTINE(関数,手続き,及びトリガのSQLオブジェクトの再作成)
ALTER TABLE(表定義変更)
ALTER TRIGGER(トリガのSQLオブジェクトの再作成)
COMMENT(注釈付加)
CREATE ALIAS(別名定義)
CREATE AUDIT(監査対象イベントの定義)
CREATE CONNECTION SECURITY(CONNECT関連セキュリティ機能の定義)
CREATE FOREIGN INDEX(外部インデクス定義)
CREATE FOREIGN TABLE(外部表定義)
CREATE 〔PUBLIC 〕FUNCTION(関数定義,パブリック関数定義)
CREATE INDEX 形式1(インデクス定義)
CREATE INDEX 形式2(インデクス定義)
CREATE INDEX 形式3(部分構造インデクス定義)
CREATE 〔PUBLIC 〕PROCEDURE(手続き定義,パブリック手続き定義)
CREATE SCHEMA(スキーマ定義)
CREATE SEQUENCE(順序数生成子定義)
CREATE SERVER(外部サーバ定義)
CREATE TABLE(表定義)
CREATE TRIGGER(トリガ定義)
CREATE TYPE(型定義)
CREATE USER MAPPING(ユーザマッピング定義)
CREATE 〔PUBLIC 〕VIEW(ビュー定義,パブリックビュー定義)
DROP ALIAS(別名削除)
DROP AUDIT(監査対象イベントの削除)
DROP CONNECTION SECURITY (CONNECT関連セキュリティ機能の削除)
DROP DATA TYPE(ユーザ定義型削除)
DROP FOREIGN INDEX(外部インデクス削除)
DROP FOREIGN TABLE(外部表削除)
DROP 〔PUBLIC 〕FUNCTION(関数削除,パブリック関数削除)
DROP INDEX(インデクス削除)
DROP 〔PUBLIC 〕PROCEDURE(手続き削除,パブリック手続き削除)
DROP SCHEMA(スキーマ削除)
DROP SEQUENCE(順序数生成子削除)
DROP SERVER(外部サーバ削除)
DROP TABLE(表削除)
DROP TRIGGER(トリガ削除)
DROP USER MAPPING(ユーザマッピング削除)
DROP 〔PUBLIC 〕VIEW(ビュー表の削除,パブリックビュー表の削除)
GRANT 形式1(権限定義)
GRANT 形式2(監査人のパスワード変更)
REVOKE(権限削除)

4. 操作系SQL
全般規定
ALLOCATE CURSOR文 形式1(文カーソル割当て)
ALLOCATE CURSOR文 形式2(結果集合カーソル割当て)
ASSIGN LIST文 形式1(リスト作成)
ASSIGN LIST文 形式2(リスト作成)
CALL文(手続きの呼び出し)
CLOSE文(カーソルクローズ)
DEALLOCATE PREPARE文(SQLの前処理無効化)
DECLARE CURSOR 形式1(カーソル宣言)
DECLARE CURSOR 形式2(カーソル宣言)
DELETE文 形式1(行削除)
DELETE文 形式2(配列を使用した行削除)
準備可能動的DELETE文:位置付け(前処理可能なカーソルを使用した行削除)
DESCRIBE文 形式1(検索情報,入出力情報の受け取り)
DESCRIBE文 形式2(検索情報,入出力情報の受け取り)
DESCRIBE CURSOR文(カーソルの検索情報の受け取り)
DESCRIBE TYPE文(ユーザ定義型の定義情報の受け取り)
DROP LIST文(リスト削除)
EXECUTE文 形式1(SQLの実行)
EXECUTE文 形式2(配列を使用したSQLの実行)
EXECUTE IMMEDIATE文(SQLの前処理と実行)
FETCH文 形式1(データの取り出し)
FETCH文 形式2(データの取り出し)
FETCH文 形式3(データの取り出し)
FREE LOCATOR文(位置付け子の無効化)
INSERT文 形式1(行挿入)
INSERT文 形式2(行挿入)
INSERT文 形式3,形式4(配列を使用した行挿入)
OPEN文 形式1(カーソルオープン)
OPEN文 形式2(カーソルオープン)
PREPARE文(SQLの前処理)
PURGE TABLE文(全行削除)
1行SELECT文(1行検索)
動的SELECT文 形式1(動的検索)
動的SELECT文 形式2(動的検索)
UPDATE文 形式1(データ更新)
UPDATE文 形式2(データ更新)
UPDATE文 形式3,形式4(配列を使用した行更新)
準備可能動的UPDATE文:位置付け 形式1(前処理可能なカーソルを使用したデータ更新)
準備可能動的UPDATE文:位置付け 形式2(前処理可能なカーソルを使用したデータ更新)
代入文 形式1(SQL変数,又はSQLパラメタへの値の代入)
代入文 形式2(埋込み変数,又は?パラメタへの値の代入)

5. 制御系SQL
全般規定
CALL COMMAND文(コマンド又はユティリティの実行)
COMMIT文(トランザクションの正常終了)
CONNECT文(HiRDBとの接続)
DISCONNECT文(HiRDBとの切り離し)
LOCK文(表の排他制御)
RDノード指定CONNECT文(分散RDノードとの接続)
RDノード指定DISCONNECT文(分散RDノードとの切り離し)
ROLLBACK文(トランザクションの取り消し)
SET CONNECTION文(現行RDノードの設定)
SET SESSION AUTHORIZATION文(実行ユーザの変更)

6. 埋込み言語文法
全般規定
BEGIN DECLARE SECTION(埋込みSQL開始宣言)
END DECLARE SECTION(埋込みSQL終了宣言)
ALLOCATE CONNECTION HANDLE(接続ハンドルの割り当て)
FREE CONNECTION HANDLE(接続ハンドルの解放)
DECLARE CONNECTION HANDLE SET(使用する接続ハンドルの宣言)
DECLARE CONNECTION HANDLE UNSET(使用する接続ハンドルの全解除)
GET CONNECTION HANDLE(接続ハンドル取得)
COPY(登録原文の引き込み)
GET DIAGNOSTICS(診断情報取得)
COMMAND EXECUTE(UAPからのコマンド実行)
SQL先頭子
SQL終了子
WHENEVER(埋込み例外宣言)
SQLCODE変数
SQLSTATE変数
PDCNCTHDL型変数の宣言
INSTALL JAR(JARファイルの登録)
REPLACE JAR(JARファイルの再登録)
REMOVE JAR(JARファイルの削除)
INSTALL CLIB(外部Cライブラリファイルの新規登録)
REPLACE CLIB(外部Cライブラリファイルの再登録)
REMOVE CLIB(外部Cライブラリファイルの削除)
DECLARE AUDIT INFO SET(ユーザ任意接続情報の設定)

7. ルーチン制御SQL
全般規定
複合文(複数文実行)
IF文(条件分岐による実行)
LEAVE文(文の途中終了)
RETURN文(関数の戻り値の返却)
WHILE文(文の繰り返し)
FOR文(各行に対する文の繰返し)
WRITE LINE文(ファイルへの文字列出力)
SIGNAL文(エラーの通知)
RESIGNAL文(エラーの再通知)

付録
付録A 予約語一覧
付録A.1 SQLの予約語
付録A.2 HiRDBの予約語
付録A.3 SQL予約語削除機能で削除できる予約語
付録B SQL一覧
付録C 外部表を利用する場合のデータ型の対応関係
付録C.1 外部のDBがHiRDBの場合
付録C.2 外部のDBがXDM/RD E2の場合
付録C.3 外部のDBがORACLEの場合
付録C.4 外部のDBがDB2の場合
付録D 外部表を利用する場合の制限事項
付録E 例題用データベース

索引