>サイトトップへ >このカテゴリの一覧へ

985

X 3005-2:2015 (ISO/IEC 9075-2:2011)

i)

機能 T332“拡張役割”なしでは,適合する SQL 言語は,CURRENT_ROLE を含む<既定値選択

>を含んではならない。

d)  “12.3 <権限>”

i)

機能 T332“拡張役割”なしでは,適合する SQL 言語は,<権限付与者>を含んではならない。

e)

12.4 <役割定義>”

i)

機能 T332“拡張役割”なしでは,適合する SQL 言語は,WITH ADMIN を直に含む<役割定義>

を含んではならない。

f)

12.8  権限付与者決定”

i)

機能 T332“拡張役割”なしでは,適合する SQL 言語は,<権限付与者>を含んではならない。

233)  機能 T341“SQL 呼出し関数及び SQL 呼出し手続のオーバロード”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T341“SQL 呼出し関数及び SQL 呼出し手続のオーバロード”なしでは,適合する SQL 言

語は,ルーチン名が

<スキーマ修飾付きルーチン名>であるルーチン記述子を,<スキーマ修飾

付きルーチン名

>の陽に指定されるか又は暗に想定される<スキーマ名>によって識別されるス

キーマが含む

<スキーマルーチン>を含んではならない。

234)  機能 T351“囲み注釈”に対する規定

a)  “5.2 <トークン>及び<分離符号>”

i)

機能 T351“囲み注釈”なしでは,適合する SQL 言語は,<囲み注釈>を含んではならない。

235)  機能 T431“拡張グループ化能力”に対する規定

a)  “6.9 <集合関数指定>”

i)

機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<グループ化操作>を含ん

ではならない。

b)  “7.9 <GROUP BY 句>”

i)

機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<ROLLUP リスト>を含ん

ではならない。

ii)  機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<CUBE リスト>を含んで

はならない。

iii)  機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<GROUPING SETS 指定>

を含んではならない。

iv)  機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<空グループ化集合>を含

んではならない。

v)  機能 T431“拡張グループ化能力”なしでは,適合する SQL 言語は,<グループ化列参照リスト

>を含む<通常グループ化集合>を含んではならない。

236)  機能 T432“入れ子及び連結 GROUPING SETS”に対する規定

a)  “7.9 <GROUP BY 句>”

i)

機能 T432“入れ子及び連結 GROUPING SETS”なしでは,適合する SQL 言語は,<GROUPING

SETS 指定>を含む<グループ化集合リスト>を含んではならない。

ii)  機能 T432“入れ子及び連結 GROUPING SETS”なしでは,適合する SQL 言語は,<GROUP BY

>に単純に含まれる唯一の<グループ化要素>ではない<GROUPING SETS 指定> GSS を単純に

含む

<GROUP BY 句>を含んではならない。


986

X 3005-2:2015 (ISO/IEC 9075-2:2011)

注記 593  “9.12  グループ化操作”の適合性規則も適用する。

237)  機能 T433“複数引数 GROUPING 関数”に対する規定

a)  “6.9 <集合関数指定>”

i)

機能 T433“複数引数 GROUPING 関数”なしでは,適合する SQL 言語は,二つ以上の<列参照>

を含む

<グループ化操作>を含んではならない。

238)  機能 T434“GROUP BY DISTINCT”に対する規定

a)  “7.9 <GROUP BY 句>”

i)

機能 T434“GROUP BY DISTINCT”なしでは,適合する SQL 言語は,<集合限定子>を単純に

含む

<GROUP BY 句>を含んではならない。

239)  機能 T441“ABS 及び MOD 関数”に対する規定

a)  “6.28 <数値関数>”

i)

機能 T441“ABS 及び MOD 関数”なしでは,適合する SQL 言語は,<絶対値式>を含んではな

らない。

ii)  機能 T441“ABS 及び MOD 関数”なしでは,適合する SQL 言語は,<剰余式>を含んではなら

ない。

240)  機能 T461“対称的 BETWEEN 述語”に対する規定

a)  “8.3 <BETWEEN 述語>”

i)

機能 T461“対称的 BETWEEN 述語”なしでは,適合する SQL 言語は,SYMMETRIC 又は

ASYMMETRIC を単純に含む<BETWEEN 述語>を含んではならない。

注記 594 <BETWEEN 述語>は,順序付け操作なので,“9.14  順序付け操作”の適合性規則も

適用する。

241)  機能 T471“結果集合戻り値”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T471“結果集合戻り値”なしでは,適合する SQL 言語は,<戻り結果集合特性>を含んで

はならない。

b)  “14.2 <カーソル特性>”

i)

機能 T471“結果集合戻り値”なしでは,適合する SQL 言語は,<カーソル戻り可能性>を含ん

ではならない。

c)

20.16 <受取りカーソル割当て文>”

i)

機能 T471“結果集合戻り値”なしでは,適合する SQL 言語は,<受取りカーソル割当て文>を

含んではならない。

242)  機能 T472“DESCRIBE CURSOR”に対する規定

a)  “20.9 <記述文>”

i)

機能 T472“DESCRIBE CURSOR”なしでは,適合する SQL 言語は,<カーソル名>を含む<記述

対象

>を含む<出力 DESCRIBE 文>を含んではならない。

243)  機能 T491“LATERAL 導出表”に対する規定

a)  “7.6 <表参照>”

i)

機能 T491“LATERAL 導出表”なしでは,適合する SQL 言語は,<横参照導出表>を含んでは

ならない。

244)  機能 T495“データ変更及び取出しの一体化”に対する規定


987

X 3005-2:2015 (ISO/IEC 9075-2:2011)

a)  “7.6 <表参照>”

i)

機能 T495“データ変更及び取出しの一体化”なしでは,適合する SQL 言語は,<データ変更差

分表

>を含んではならない。

245)  機能 T501“拡張 EXISTS 述語”に対する規定

a)  “8.10 <EXISTS 述語>”

i)

機能 T501“拡張 EXISTS 述語”なしでは,適合する SQL 言語は,<表副問合せ>に直接含まれ

<問合せ指定>の<選択リスト>が<アスタリスク>又は単一の<導出列>のいずれかから成らな

<表副問合せ>を単純に含む<EXISTS 述語>を含んではならない。

246)  機能 T502“期間述語”に対する規定

a)  “8.20 <期間述語>”

i)

機能 T502“期間述語”なしでは,適合する SQL 言語は,<期間述語>を含んではならない。

247)  機能 T511“トランザクション数”に対する規定

a)  “23.1 <GET DIAGNOSTICS 文>”

i)

機 能 T511 “ ト ラ ン ザ ク シ ョ ン 数 ” な し で は , 適 合 す る SQL 言 語 は ,

TRANSACTIONS_COMMITTED

TRANSACTIONS_ROLLED_BACK

TRANSACTION_ACTIVE を含む<文情報項目名>を含んではならない。

248)  機能 T521“CALL 文中の名前付き引数”に対する規定

a)  “10.4 <ルーチン呼出し>”

i)

機能 T521“CALL 文中の名前付き引数”なしでは,適合する SQL 言語は,<名前付き引数指定

>を含んではならない。

249)  機能 T522“SQL 呼出し手続の入力パラメタのための既定値”に対する規定

a)  “10.4 <ルーチン呼出し>”

i)

機能 T522“SQL 呼出し手続の入力パラメタのための既定値”なしでは,適合する SQL 言語中

で,

<SQL 引数>は,<文脈型付き値指定>であってはならない。

b)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T522“SQL 呼出し手続の入力パラメタのための既定値”なしでは,適合する SQL 言語は,

<パラメタ既定値>を含んではならない。

250)  機能 T551“既定構文のための省略可能なキーワード”に対する規定

a)  “7.13 <問合せ式>”

i)

機能 T551“既定構文のための省略可能なキーワード”なしでは,適合する SQL 言語は,UNION

DISTINCT,EXCEPT DISTINCT 又は INTERSECT DISTINCT を含んではならない。

b)  “14.2 <カーソル特性>”

i)

機能 T551“既定構文のための省略可能なキーワード”なしでは,適合する SQL 言語は,WITHOUT

HOLD を直に含む<カーソル保持可能性>を含んではならない。

251)  機能 T561“保持可能位置付け子”に対する規定

a)  “14.17 <FREE LOCATOR 文>”

i)

機能 T561“保持可能位置付け子”なしでは,適合する SQL 言語は,<FREE LOCATOR 文>を含

んではならない。

b)  “14.18 <HOLD LOCATOR 文>”

i)

機能 T561“保持可能位置付け子”なしでは,適合する SQL 言語は,<HOLD LOCATOR 文>を


988

X 3005-2:2015 (ISO/IEC 9075-2:2011)

含んではならない。

252)  機能 T571“配列戻し外部 SQL 呼出し関数”に対する規定

a)  “11.51 <利用者定義型定義>”

i)

機能 T571“配列戻し外部 SQL 呼出し関数”なしでは,適合する SQL 言語は,次のいずれかの

条件を満たす

<RETURNS 句>を含む<メソッド指定>を含んではならない。

1) <結果 CAST FROM 型>が指定され,それが<配列型>を単純に含み,かつ,<位置付け子標識>

を含まない。

2) <結果 CAST FROM 型>が指定されず,<戻りデータ型>が<配列型>を単純に含み,かつ,<位

置付け子標識

>を含まない。

b)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T571“配列戻し外部 SQL 呼出し関数”なしでは,適合する SQL 言語は,配列戻し外部関

数を定義する

<SQL 呼出しルーチン>を含んではならない。

253)  機能 T572“マルチ集合戻し外部 SQL 呼出し関数”に対する規定

a)  “11.51 <利用者定義型定義>”

i)

機能 T572“マルチ集合戻し外部 SQL 呼出し関数”なしでは,適合する SQL 言語は,次のいず

れかの条件を満たす

<RETURNS 句>を含む<メソッド指定>を含んではならない。

1) <結果 CAST FROM 型>が指定され,それが<マルチ集合型>を単純に含み,かつ,<位置付け

子標識

>を含まない。

2) <結果 CAST FROM 型>が指定されず,<戻りデータ型>が<マルチ集合型>を単純に含み,かつ,

<位置付け子標識>を含まない。

b)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T572“マルチ集合戻し外部 SQL 呼出し関数”なしでは,適合する SQL 言語は,マルチ集

合戻し外部関数を定義する

<SQL 呼出しルーチン>を含んではならない。

254)  機能 T581“正規表現部分列関数”に対する規定

a)  “6.30 <データ列値関数>”

i)

機能 T581“正規表現部分列関数”なしでは,適合する SQL 言語は,<正規表現部分列関数>を

含んではならない。

255)  機能 T591“潜在的にナルの列の UNIQUE 制約”に対する規定

a)  “11.7 <一意性制約定義>”

i)

機能 T591“潜在的にナルの列の UNIQUE 制約”なしでは,適合する SQL 言語中で,UNIQUE

が指定されるならば,

<一意列リスト>に含まれる<列名>をもつ各列に対する<列定義>は,NOT

NULL を含まなければならない。

注記 595  “9.12  グループ化操作”の適合性規則も適用する。

256)  機能 T601“局所カーソル参照”に対する規定

a)  “5.4  名前及び識別子”

i)

機能 T601“局所カーソル参照”なしでは,適合する SQL 言語中で,<カーソル名>は,<局所修

飾子

>を含んではならない。

257)  機能 T611“基本 OLAP 演算”に対する規定

a)  “6.10 <ウィンドウ関数>”

i)

機能 T611“基本 OLAP 演算”なしでは,適合する SQL 言語は,<ウィンドウ関数>を含んでは


989

X 3005-2:2015 (ISO/IEC 9075-2:2011)

ならない。

b)  “7.11 <WINDOW 句>”

i)

機能 T611“基本 OLAP 演算”なしでは,適合する SQL 言語は,<ウィンドウ指定>を含んでは

ならない。

c)

10.10 <ソート指定リスト>”

i)

機能 T611“基本 OLAP 操作”なしでは,適合する SQL 言語は,<ナル順序付け>を含んではな

らない。

注記 596  “9.14  順序付け操作”の適合性規則も適用する。

258)  機能 T612“高度 OLAP 演算”に対する規定

a)  “5.4  名前及び識別子”

i)

機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<ウィンドウ名>を含んではな

らない。

b)  “6.10 <ウィンドウ関数>”

i)

機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<ウィンドウ名>を含んではな

らない。

ii)  機能 T612

“高度

OLAP 演算”なしでは,適合する SQL 言語は,PERCENT_RANK 又は CUME_DIST

を含んではならない。

iii)  機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,ウィンドウ順序付け句を含ま

ないウィンドウ構造記述子をもつ

<ウィンドウ名又は指定>を直に含み,かつ,ROW_NUMBER

を単純に含む

<ウィンドウ関数>を含んではならない。

c)

6.28 <数値関数>”

i)

機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<幅バケット関数>を含んでは

ならない。

d)  “7.11 <WINDOW 句>”

i)

機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<WINDOW 句>を含んではな

らない。

ii)  機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<既存ウィンドウ名>を含んで

はならない。

iii)  機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<ウィンドウ枠除外>を含んで

はならない。

注記 597  “9.12  グループ化操作”の適合性規則も適用する。

e)

10.9 <集約関数>”

i)

機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<仮説集合関数>又は<逆分布

関数

>を含んではならない。

ii)  機能 T612“高度 OLAP 演算”なしでは,適合する SQL 言語は,<FILTER 句>を含んではならな

い。

259)  機能 T613“サンプリング”に対する規定

a)  “7.6 <表参照>”

i)

機能 T613“サンプリング”なしでは,適合する SQL 言語は,<標本句>を含んではならない。

260)  機能 T614“NTILE 関数”に対する規定


990

X 3005-2:2015 (ISO/IEC 9075-2:2011)

a)  “6.10 <ウィンドウ関数>”

i)

機能 T614“NTILE 関数”なしでは,適合する SQL 言語は,<NTILE 関数>を含んではならない。

261)  機能 T615“LEAD 又は LAG 関数”に対する規定

a)  “6.10 <ウィンドウ関数>”

i)

機能 T615“LEAD 又は LAG 関数”なしでは,適合する SQL 言語は,<LEAD 又は LAG 関数>

を含んではならない。

262)  機能 T616“LEAD 及び LAG 関数のナルの扱いの選択肢”に対する規定

a)  “6.10 <ウィンドウ関数>”

i)

機能 T616“LEAD 及び LAG 関数のナルの扱いの選択肢”なしでは,適合する SQL 言語中で,

<LEAD 又は LAG 関数>は,<ナルの扱い>を含んではならない。

263)  機能 T617“FIRST_VALUE 又は LAST_VALUE 関数”に対する規定

a)  “6.10 <ウィンドウ関数>”

i)

機能 T617“FIRST_VALUE 又は LAST_VALUE 関数”なしでは,適合する SQL 言語は,

<FIRST_VALUE 又は LAST_VALUE 関数>を含んではならない。

264)  機能 T618“NTH_VALUE 関数”に対する規定

a)  “6.10 <ウィンドウ関数>”

i)

機能 T618“NTH_VALUE 関数”なしでは,適合する SQL 言語は,<NTH_VALUE 関数>を含ん

ではならない。

265)  機能 T619“入れ子ウィンドウ関数”に対する規定

a)  “6.11 <入れ子ウィンドウ関数>”

i)

機能 T619“入れ子ウィンドウ関数”なしでは,適合する SQL 言語は,<入れ子ウィンドウ関数

>を含んではならない。

266)  機能 T620“WINDOW 句:GROUPS 選択肢”に対する規定

a)  “7.11 <WINDOW 句>”

i)

機能 T620“WINDOW 句:GROUPS 選択肢”なしでは,適合する SQL 言語は,GROUPS を指

定する

<ウィンドウ枠単位>を含んではならない。

267)  機能 T621“拡張数関数”に対する規定

a)  “6.28 <数値関数>”

i)

機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<自然対数>を含んではならない。

ii)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<指数関数>を含んではならない。

iii)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<べき関数>を含んではならない。

iv)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<平方根>を含んではならない。

v)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<下限関数>を含んではならない。

vi)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<上限関数>を含んではならない。

b)  “10.9 <集約関数>”

i)

機能 T621“拡張数関数”なしでは,適合する SQL 言語は,STDDEV_POP,STDDEV_SAMP,

VAR_POP 又は VAR_SAMP を直に含む<計算操作>を含んではならない。

ii)  機能 T621“拡張数関数”なしでは,適合する SQL 言語は,<2 項集合関数種別>を含んではな

らない。

268)  機能 T641“複数列代入”に対する規定


991

X 3005-2:2015 (ISO/IEC 9075-2:2011)

a)  “14.15 <設定句リスト>”

i)

機能 T641“複数列代入”なしでは,適合する SQL 言語は,<複数列代入>を含んではならない。

269)  機能 T651“SQL ルーチン中の SQL スキーマ文”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T651“SQL ルーチン中の SQL スキーマ文”なしでは,適合する SQL 言語は,SQL スキー

マ文を含む

<SQL ルーチン本体>を含んではならない。

270)  機能 T652“SQL ルーチン中の動的 SQL 文”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T652“SQL ルーチン中の動的 SQL 文”なしでは,適合する SQL 言語は,動的 SQL 文を

含む

<SQL ルーチン本体>を含んではならない。

271)  機能 T653“外部ルーチン中の SQL スキーマ文”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T653“外部ルーチン中の SQL スキーマ文”なしでは,適合する SQL 言語は,SQL スキー

マ文が現れるプログラムを識別する

<外部ルーチン名>を含んではならない。

272)  機能 T654“外部ルーチン中の動的 SQL 文”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T654“外部ルーチン中の動的 SQL 文”なしでは,適合する SQL 言語は,動的 SQL 文が現

れるプログラムを識別する

<外部ルーチン名>を含んではならない。

273)  機能 T655“循環的依存ルーチン”に対する規定

a)  “11.60 <SQL 呼出しルーチン>”

i)

機能 T655“循環的依存ルーチン”なしでは,適合する SQL 言語は,<SQL 呼出しルーチン>に

よって指定される

SQL 呼出しルーチンのルーチン記述子に当該ルーチンが一般に依存してい

<ルーチン呼出し>を含む<SQL ルーチン本体>を含んではならない。


992

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 B

(参考)

処理系定義要素

この附属書は,ISO/IEC 9075-3 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-4 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-9 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-10 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-11 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-13 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,ISO/IEC 9075-14 の“附属書 B  処理系定義要素”によって修正される。

この附属書は,この規格の本体で処理系定義として識別している機能を参照する。

1)  “4.2.1  文字列の導入”

a) <キーワード>の NATIONAL CHARACTER によって表現される文字列の下位型に関連付けられる

特定の文字集合は,処理系定義とする。

b)  ある文字集合から別の文字集合への UCS でない文字列式の変換が自動的に行われる環境は,処理

系定義とする。

2)  “4.2.4  文字レパートリ”

a) SQL 処理系は,一つ以上の文字レパートリを提供する。これらの文字レパートリは,規格によっ

て定義されてもよいし,処理系定義であってもよい。

b) SQL_TEXT と名前付けられた文字集合は,全ての<SQL 言語文字>と,SQL 処理系によって提供

される全ての文字集合中の全ての文字とを含む,国際文字集合のレパートリの処理系定義の部分

集合とする。

c) SQL_IDENTIFIER と名前付けられた文字集合は,<SQL 言語文字>,及び<通常識別子>で用いるた

めに

SQL 処理系が提供する他の全ての文字から成る処理系定義の文字レパートリとする。

3)  “4.2.5  文字符号化形式”

a) SQL_CHARACTER 文字符号化形式での文字符号化は,処理系定義とする。

b) SQL_TEXT 文字符号化形式での文字符号化は,処理系定義とする。

c) SQL_IDENTIFIER 文字符号化形式での文字符号化は,処理系定義とする。

d) SQL 処理系は,提供する各文字レパートリに対して,一つ以上の文字符号化形式を提供する。こ

れらの文字符号化形式は,規格によって定義されてもよいし,処理系定義であってもよい。

4)  “4.2.6  照合順”

a)  規格定義の照合順を含めて,SQL 処理系によって提供される照合順は,処理系定義とする。

b) SQL_CHARACTER 照合順によって指定される順序は,処理系定義とする。

c) SQL_TEXT 照合順によって指定される順序は,処理系定義とする。

d) SQL_IDENTIFIER 照合順によって指定される順序は,処理系定義とする。

5)  “4.2.7  文字集合”

a) UCS_BASIC 又は UNICODE のどちらの照合順が,UTF8,UTF16 及び UTF32 文字集合に対する既

定であるかは,処理系定義とする。


993

X 3005-2:2015 (ISO/IEC 9075-2:2011)

6)  “4.2.8  国際文字集合”

a) <NORMALIZE 関数>及び<NORMALIZED 述語>を除いて,非正規化 UCS 文字列に関するどの演

算の結果も,処理系定義とする。

7)  “4.3.2 2 進オクテット列の比較”

a)  長大オブジェクト 2 進オクテット列値以外の 2 進オクテット列値に対して,等価でない二つの 2

進オクテット列値を比較するとき,後続する

X’00’を意味があるとみなすかどうかは,処理系定

義とする。

8)  “4.4.2  数の性質”

a)  後続する桁が数値から取り除かれるとき,切捨てが行われるか又は丸めが行われるかは,処理系

定義とする。

b)  切捨て又は丸めによって近似が得られ,

二つ以上の近似があるとき,どの近似が選択されるかは,

処理系定義とする。

c)

与えられた概数型に対して,丸め又は切捨てによって得られる近似をどの数値がもつかは,処理

系定義とする。

d)  算術の通常の規則が適用される範囲の境界は,処理系定義とする。

e)

数データ型間で変換が行われるとき,最下位有効桁が失われるならば,丸めが発生するか又は切

捨てが発生するかは,処理系定義とする。

9)  “4.6.1  日時及び時間隔の導入”

a)  日時型又は時間隔型 に対する日時又は時間隔の値 の丸めによって得られる近似は,中の次

のような値 とする。と数値 との間の差の絶対値が 中の二つの連続する日時又は時間隔の

値の間の差の絶対値の半分以下である。

そのような値 が二つ以上あるならば,どれをとるかは,

処理系定義とする。

10)  “4.6.2  日時”

a) SQL 処理系がうるう秒を提供するかどうか,及びそれが日時及び時間隔の算術演算の結果に反映

されるかどうかは,処理系定義とする。

11)  “4.9.1  参照型の導入”

a)  ホスト変数中では,REF 値は,オクテットの値として実体化される。ここで,は,処理系定

義とする。

12)  “4.13  列,フィールド及び属性”

a)  列の値がナルであり得ないことを SQL 処理系が正しく推論できるようにする処理系定義の規則

が存在するならば,実表の列は,ナルでないことが分かる。

13)  “4.15.10  表を含む演算”

a) <表参照>が<標本句>を含み,<標本句>が<REPEATABLE 句>を含むならば,処理系定義の幾つか

の条件を満たすという条件で,その

<表参照>の繰返し実行は,与えられた<繰返し引数>に対して

同一行をもつ結果表を戻す。

14)  “4.18.3  表制約”

a)  参照制約記述子中の参照列の名前のリスト及び被参照列の名前のリストの順序付けは,処理系定

義とするが,対応する列の名前は,各リスト中の対応する位置を占めなければならない。

15)  “4.19  関数従属性”

a) SQL 処理系は,追加の知られている関数従属性を定義してもよい。


994

X 3005-2:2015 (ISO/IEC 9075-2:2011)

16)  “4.19.16 <問合せ式>中の知られている関数従属性”

a) RECURSIVE が指定されるならば,BPK 集合,BUC 集合及び公理的でない知られている関数従属

性は,処理系定義とする。

17)  “4.23 SQL クライアントモジュール”

a) SQL クライアントモジュールが作成又は破壊される機構は,処理系定義とする。

b) SQL クライアントモジュールと SQL エージェントとの間の関連付けが定義される方法は,処理系

定義とする。

c)

同じ又は異なるプログラム言語で書かれた他の翻訳単位を,翻訳単位が呼び出してもよい又は制

御を移してもよいかどうかは,処理系定義とする。

18)  “4.24  埋込み構文”

a)  手続,サブルーチン,プログラム変数,分岐ラベル,<SQL クライアントモジュール定義>,<外

部呼出し手続

>又は他のホスト言語若しくはホスト言語環境の要素の名前のために,名前空間の一

部が

SQL 処理系によって予約されるかどうかは,処理系定義とする。名前空間の一部がそのよう

に予約されるならば,予約される部分も,処理系定義とする。

19)  “4.26 SQL の直接起動”

a) <直接 SQL 文>の起動方法,<直接 SQL 文>の結果として条件を引き起こす方法,診断情報にアク

セスする方法,及び結果を戻す方法は,処理系定義とする。

20)  “4.28.2 SQL 呼出しルーチンの性質”

a)  外部ルーチンの<ルーチン本体>によって識別されるプログラムの実行後,そのルーチンのパラメ

タ受渡し様式が

GENERAL ならば,出力パラメタ(があるならば,出力パラメタ)の値,プログ

ラムから戻される値(があるならば,その値)

SQLSTATE の値,及びメッセージテキスト(があ

るならば,そのメッセージテキスト)の値は,処理系定義の方法で得られる。

21)  “4.28.3 SQL 呼出しルーチンの実行”

a)  外部ルーチンの<ルーチン本体>によって識別される外部プログラムに含まれる<SQL クライアン

トモジュール定義

>が<モジュールパス指定>を指定しないならば,外部ルーチン SQL パスは,処

理系定義の

SQL パスとする。

22)  “4.28.5 SQL 呼出し手続によって戻される結果集合”

a)  結果集合並び RSS の存在をもたらす SQL 呼出し手続 SIP の呼出し元 INV に RSS 自体を戻しても

よいかどうかは,処理系定義とする。

23)  “4.30.2  状態パラメタ”

a)  終了条件警告  (warning)  は,

この規格で規定する条件だけでなく,処理系定義の条件に対しても,

引き起こされる。

24)  “4.31  診断領域”

a)  例外条件が SQLSTATE によって通知されるとき,その条件についての情報をこの診断領域中の空

きの条件領域に格納する。引き起こされるかもしれない別の条件によって条件領域が更に占有さ

れることになる範囲は,処理系定義とする。

25)  “4.33  カーソル”

a)  敏感又は処理依存感度の保持可能カーソルが,後続 SQL トランザクションに対して開いている状

態のまま保持されるならば,(この

SQL トランザクション又はカーソルが開いている状態のまま

保持されるいずれかの後続

SQL トランザクションによって)SQL データに対して行われた著しい


995

X 3005-2:2015 (ISO/IEC 9075-2:2011)

変更が,そのカーソルを閉じる前に,後続

SQL トランザクション中のそのカーソルに対して可視

であるかどうかは,処理系定義とする。

26)  “4.33.1  カーソルの一般記述”

a)  受取りカーソルの操作上の戻り可能性は,処理系定義とする。

27)  “4.35  基本安全保護モデル”

a)  オペレーティングシステム利用者への<認可識別子>の対応付けは,処理系定義とする。

28)  “4.36 SQL トランザクション”

a) SQL スキーマ文の実行と同じ SQL トランザクション内に,SQL データ文の実行が存在してもよ

いかどうかは,処理系定義とする。存在してもよいならば,どの開いているカーソル又は遅延制

約に与える効果も,処理系定義とする。

b) SQL 処理系が回復不可能な誤りを検出し,<ROLLBACK 文>の実行を暗に開始するならば,処理

系定義の例外コード  (implementation-defined exception code)  で例外条件が引き起こされる。

c) SQL スキーマ文の動的実行と同じ SQL トランザクション内に,<SQL 動的データ文>の動的実行

が存在してもよいかどうかは,処理系定義とする。存在してもよいならば,準備された動的文に

与える効果も,処理系定義とする。

d)  診断領域の内容,SQL 記述子領域の内容,及び被準備文の状態に,<保存点指定子>を参照する

<ROLLBACK 文>が影響を与えるかどうか,又はどのように影響を与えるかは,処理系定義とす

る。

e) SQL トランザクションのトランザクション時刻印のデータ型は,処理系定義とする。

f)

二つ以上の

SQL サーバに影響を与える SQL トランザクションが提供されるかどうかは,処理系

定義とする。

29)  “4.37 SQL コネクション”

a) SQL サーバにアクセスし,SQL セションを開始するために必要な,SQL サーバの位置,同一性及

び通信プロトコルを決定するために,

SQL 処理系が<SQL サーバ名>をどのように用いるかは,処

理系定義とする。

30)  “4.38 SQL セション”

a)  陽に指定される<CONNECT 文>の利用以外によって SQL セションが開始されるとき,処理系定義

SQL サーバに関連付けられる SQL セションが開始される。既定 SQL サーバは,処理系定義と

する。

b) <外部呼出し手続>の呼出しが最後の動作中 SQL クライアントモジュール内の最後の呼出しかど

うかを

SQL 処理系が決定するための機構及び規則は,処理系定義とする。

c) SQL セションは,SQL セション内の大域一時表,作成局所一時表又は宣言局所一時表の実現値を

含む一つ以上の処理系定義のスキーマを用いる。

d) SQL セションが開始されるとき,SQL セションの現行既定時刻帯時差として用いる処理系定義の

既定時刻帯が存在する。

e)

陽に指定される

<CONNECT 文>の利用以外によって SQL セションが開始されるとき,SQL セシ

ョン利用者識別子の処理系定義の初期値が存在する。

f) SQL セションが開始されるとき,<PREPARE 文>及び<EXECUTE IMMEDIATE 文>の実行によっ

て現行

SQL セション中で動的に準備される<準備可能文>に含まれる全ての修飾なし<スキーマ名

>を実効的に修飾するために用いる名前をもつ処理系定義の既定カタログが存在する。


996

X 3005-2:2015 (ISO/IEC 9075-2:2011)

g) SQL セションが開始されるとき,<PREPARE 文>及び<EXECUTE IMMEDIATE 文>の実行によっ

て現行

SQL セション中で動的に準備される<準備可能文>に含まれる全ての修飾なし<スキーマ修

飾付き名前

>を実効的に修飾するために用いる名前をもつ処理系定義の既定スキーマが存在する。

h) <SET

PATH 文>の実行の成功の前の現行 SQL パスの値は,処理系定義とする。

30.1)  “4.39.1  トリガの一般記述”

a)  トリガの集合の実行順序  (order of execution)  は,最も古いトリガが最初に実行されるというよう

に,それらの記述子中の作成時刻印の値の昇順とする。一つ以上のトリガが同じ時刻印の値をも

つならば,それらの実行の相対的な順序は,処理系定義とする。

31)  “4.40  クライアントサーバ処理”

a) SQL エージェントが動作中のとき,その SQL エージェントは,ある処理系定義の方法で,単一の

SQL クライアントに結合されている。

32)  “5.2 <トークン>及び<分離符号>”

a)  行端標識(<改行>)は,処理系定義とする。

b)  ソース言語文字集合が<逆斜線>を含まないとき,既定の<Unicode エスケープ文字>として用いる

文字は,処理系定義とする。

c)

(大文字小文字標準形式の)

<通常識別子>と<区切り識別子>との等価性,二つの<区切り識別子>

の等価性,二つの

<Unicode 区切り識別子>の等価性,<Unicode 区切り識別子>と<区切り識別子>

との等価性,又は(大文字小文字標準形式の)

<通常識別子>と<Unicode 区切り識別子>との等価

性は,大文字小文字を区別する処理系定義の照合順を用いて決定される。

33)  “5.3 <定数>”

a)  各国文字を表現するために用いる文字集合の<文字集合名>は,処理系定義とする。

b) <真数定数>の宣言型は,処理系定義とする。

c) <概数定数>の宣言型は,処理系定義とする。

d) <2 進オクテット列定数>の宣言型は,処理系定義とする。

34)  “5.4  名前及び識別子”

a) <スキーマ名句>に含まれるが SQL クライアントモジュールに含まれない<スキーマ名>が,<カタ

ログ名

>を含まないならば,処理系定義の<カタログ名>が暗に想定される。

b) <モジュール認可句>に含まれる<スキーマ名>が<カタログ名>を含まないならば,処理系定義の<

カタログ名

>が暗に想定される。

c)

正しい

<認可識別子>であるそれらの<識別子>は,処理系定義とする。

d)  正しい<カタログ名>であるそれらの<識別子>は,処理系定義とする。

e)

全ての

<符号変換名>は,処理系定義とする。

f) <PREPARE 文>又は<EXECUTE IMMEDIATE 文>の実行によって現行 SQL セション中で動的に準

備される

<準備可能文>に含まれる<スキーマ名>が,<カタログ名>を含まないならば,SQL セショ

ンのための処理系定義の

<カタログ名>が暗に想定される。

g) <PREPARE 文>又は<EXECUTE IMMEDIATE 文>の実行によって現行 SQL セション中で動的に準

備される

<準備可能文>に含まれる<スキーマ修飾付き名前>が,<スキーマ名>を含まないならば,

SQL セションのための処理系定義の<スキーマ名>が暗に想定される。

35)  “6.1 <データ型>”

a) NATIONAL

CHARACTER に関連付けられる<文字集合名>は,処理系定義とする。


997

X 3005-2:2015 (ISO/IEC 9075-2:2011)

b) <精度>が省略されるならば,処理系定義の<精度>が暗に想定される。

c) DECIMAL として定義されるデータ型の 10 進精度は,<精度>によって指定される各値に対して,

処理系定義とする。

d) SMALLINT,INTEGER 及び BIGINT として定義されるデータ型の精度は,処理系定義とするが,

三つの全てのデータ型は,同じ基数をもつ。

e) FLOAT として定義されるデータ型の 2 進精度は,<精度>によって指定される各値に対して,処理

系定義とする。

f) REAL として定義されるデータ型の精度は,処理系定義とする。

g) DOUBLE

PRECISION として定義されるデータ型の精度は,処理系定義とするが,REAL の精度よ

り大きい。

h)  どの<データ型>に対しても,<データ型>の限界は,処理系定義とする。

i)

文字列型及び

2 進オクテット列型の最大長は,処理系定義とする。

j) <文字列型>に対して CHARACTER SET が指定されないならば,文字集合は,処理系定義とする。

k) <真数型> DECIMAL 及び NUMERIC に対して,<精度>の最大値及び<位取り>の最大値は,処理系

定義とする。

l)

各真数型 ENT に対して,次のような(ENT 自体でもよい)ENT の標準形  (normal form)  として

知られている処理系定義の真数型 ENNF(ENT)  が存在する。

i)

ENNF(ENT)  のデータ型の名前が DEC でも,INT でもない。

ii)  ENNF(DEC)  のデータ型の名前が ENNF(DECIMAL)  のデータ型の名前と同じである。

iii)  ENNF(INT)  のデータ型の名前が ENNF(INTEGER)  のデータ型の名前と同じである。

iv)  ENNF(ENT)  の精度,位取り及び基数が,それぞれ,ENT の精度,位取り及び基数と同じであ

る。

v)  ENNF(ENNF(ENT))  が ENNF(ENT)  と同じである。

m) <概数型> FLOAT に対して,<精度>の最大値は,処理系定義とする。

n)  各概数型 ANT に対して,次のような(ANT 自体でもよい)ANT の標準形  として知られている処

理系定義の概数型 ANNF(ANT)  が存在する。

i)

ANNF(ANT)  の精度が ANT の精度と同じである。

ii)  ANNF(ANNF(ANT))  が ANNF(ANT)  と同じである。

o) <概数型> FLOAT,REAL 及び DOUBLE PRECISION に対して,指数の最大値及び最小値は,処理

系定義とする。

p) <時刻小数秒精度>の最大値は,処理系定義とするが,6 未満であってはならない。

q) <日時型>に対する<時刻精度>及び<時刻印精度>の最大値は,同じ処理系定義の値とする。

r) <配列型>の最大基数が省略されるならば,処理系定義の最大基数が暗に想定される。

36)  “6.4 <値指定>及び<相手指定>”

a) <値指定> CURRENT_USER,SESSION_USER 及び SYSTEM_USER の文字列が可変長か又は固定

長か,及び可変長ならば,その最大長,固定長ならば,その長さは,処理系定義とする。

b) <値指定> CURRENT_CATALOG 及び CURRENT_SCHEMA の文字列が可変長か又は固定長か,及

び可変長ならば,その最大長,固定長ならば,その長さは,処理系定義とする。

c) SYSTEM_USER によって指定される値は,実行によって SYSTEM_USER の<一般値指定>の評価

を引き起こした

SQL 文を含む SQL クライアントモジュールを実行したオペレーティングシステ


998

X 3005-2:2015 (ISO/IEC 9075-2:2011)

ム利用者を表現する処理系定義のデータ列とする。

d) CURRENT_PATH のデータ型が固定長か又は可変長か,及び固定長ならば,その長さ,可変長な

らば,その最大長は,処理系定義とする。

e)

長さ

0 の文字列の値が<相手指定>又は<単純相手指定>に代入されるならば,例外条件:データ例

外  -  長さ の文字列  (zero-length character string)  が引き起こされるかどうかは,処理系定義と

する。

f)

機能 F611“標識データ型”なしでは,適合する SQL 言語中で,<標識パラメタ>及び<標識変数>

の宣言型は,処理系定義の同じデータ型でなければならない。

37)  “6.9 <集合関数指定>”

e) <グループ化操作>の精度は,処理系定義とする。

38)  “6.10 <ウィンドウ関数>”

a) PERCENT_RANK が指定されるならば,結果の宣言型は,処理系定義の精度をもつ概数とする。

b) CUME_DIST が指定されるならば,結果の宣言型は,処理系定義の精度をもつ概数とする。

39)  “6.11 <入れ子ウィンドウ関数>”

a) <入れ子 ROW_NUMBER 関数>の宣言型は,位取り 0 の処理系定義の真数型とする。

40)  “6.13 <CAST 指定>”

a)  真数,概数,日時又は時間隔のデータ型への型変換のとき,丸めるか又は切り捨てるかは,処理

系定義とする。

b)  真数値から時間隔型への型変換のとき,真数値の位取りが時間隔型の小数秒精度の桁数を超える

ならば,型変換演算が変換元の値を相手の型の限界に調整するために丸め又は切捨てを行うかど

うかは,処理系定義とする。

41)  “6.27 <数値式>”

a)  加算,減算,乗算又は除算の演算子の両方のオペランドの宣言型が真数のとき,結果の宣言型は,

処理系定義の真数型とする。

b)  除算の演算子の両方のオペランドの宣言型が真数のとき,結果の位取りは,処理系定義とする。

c)

算術演算子のいずれかのオペランドの宣言型が概数のとき,結果の宣言型は,処理系定義の概数

型とする。

d)  除算を行うとき,丸めるか又は切り捨てるかは,処理系定義とする。

42)  “6.28 <数値関数>”

a) <POSITION 式>の宣言型は,位取り 0 の処理系定義の真数型とする。

b) <EXTRACT 式>の宣言型は,処理系定義の真数型とする。<基本日時フィールド>が SECOND を

指定するならば,位取りは,処理系定義とする。そうでなければ,位取りは,

0 とする。

c) <LENGTH 式>の宣言型は,位取り 0 の処理系定義の真数型とする。

d) <基数式>が指定されるならば,結果の宣言型は,位取り 0 の処理系定義の真数型とする。

e) <自然対数>の結果の宣言型は,処理系定義の概数とする。

f) <指数関数>の結果の宣言型は,処理系定義の概数とする。

g) <べき関数>の結果の宣言型は,処理系定義の概数とする。

h) <下限関数>及び<上限関数>の結果の宣言型は,それらに単純に含まれる<数値式>の宣言型が真数

ならば,位取り

0 の処理系定義の真数型とする。そうでなければ,結果の宣言型は,処理系定義

の概数型とする。


999

X 3005-2:2015 (ISO/IEC 9075-2:2011)

i) <OCCURRENCES_REGEX 関数>の宣言型は,位取り 0 の処理系定義の真数型とする。

j) <POSITION_REGEX 式>の宣言型は,位取り 0 の処理系定義の真数型とする。

k) <基数式>の宣言型は,位取り 0 の処理系定義の真数型とする。

l) <最大基数式>の宣言型は,位取り 0 の処理系定義の真数型とする。

43)  “6.29 <データ列値式>”

a) <文字値式>の結果が長さ 0 の文字列ならば,

例外条件:

データ例外  -  長さ の文字列  (zero-length 

character string)  が引き起こされるかどうかは,処理系定義とする。

b) <文字因子>の文字符号化形式が UTF8,UTF16 又は UTF32 で,かつ,オペランドのいずれかが正

規化されていないならば,結果は,処理系定義とする。

44)  “6.30 <データ列値関数>”

a) <文字文字変換>又は<符号変換>の最大長は,処理系定義とする。

b) <符号変換>の結果の文字集合は,処理系定義とする。

c) <正規化関数結果長>が指定されないならば,<NORMALIZE 関数>の宣言型の最大長は,処理系定

義とする。

d) <XQuery 置換文字列>が指定されないならば,<TRANSLATE_REGEX 関数>の宣言型の最大長は,

処理系定義とする。

45)  “6.33 <時間隔値式>”

a)  (時刻帯付き又は時刻帯なしの)TIME 型の二つの値の差は,

(各端点を除いて)

-24:00:00 と

+24:00:00 との間にあるように制約される。その計算は,決定的でなければならないが,この範囲

にある

0 でない二つの値のどちらを結果とするかは,処理系定義とする。

b)  二つの日時の差から時間隔が生成されるとき,丸めるか又は切り捨てるかの選択は,処理系定義

とする。

c)

結果の

<時間隔先行フィールド精度>は,処理系定義とするが,<時間隔一次子>の<時間隔先行フ

ィールド精度

>未満であってはならない。

d) <時間隔先行フィールド精度>は,処理系定義とするが,<時間隔項 1>の時間隔フィールド及び<

時間隔先行フィールド精度

>をもつ全ての時間隔値だけでなく,<時間隔値式 1>の時間隔フィール

ド及び

<時間隔先行フィールド精度>をもつ全ての時間隔値を表現するのにも十分でなければな

らない。

46)  “6.35 <ブール値式>”

a)  BVE が真  (True)  のとき,は,ナルであり得ない,ということを SQL 処理系が正確に推論する

ことを可能にする処理系定義の規則に,BVE が適合するならば,<ブール値式>は,に対するナ

ルでないことが分かる条件とする。

47)  “7.7 <結合表>”

a)  列 CR の値がナルであり得ないことを正確に推論できる処理系定義の規則に,CR が適合するなら

ば,

<結合表>の結果の列 CR は,ナルでないことが分かる。

48)  “7.12 <問合せ指定>”

a) SQL 処理系は,ナルでないことが分かる列を認識するための処理系定義の追加の規則を定義して

もよい。

49)  “8.2 <比較述語>”

a)  どちらも 2 進オクテット長大オブジェクト列値ではない二つの 2 進オクテット列値 及び に対


1000

X 3005-2:2015 (ISO/IEC 9075-2:2011)

して,と との間の違いが,中の後続する X'00'  だけならば,が 未満か又は が と等

しいかは,処理系定義とする。

b)  比較カテゴリが RELATIVE である利用者定義型の場合に,=及び<によって全ての比較述語を定義

する構文変換が適用されるかどうかは,処理系定義とする。

50)  “8.5 <LIKE 述語>”

a) <LIKE 述語>のための照合順として,どの照合順を用いることができるかは,処理系定義とする。

51)  “8.6 <SIMILAR 述語>”

a) <SIMILAR 述語>のための照合順として,どの照合順を用いることができるかは,処理系定義とす

る。

52)  “8.20 <期間述語>”

a) <時刻印精度>の最大値は,処理系定義とする。

53)  “9.1  取出し代入”

a)  値 が概数で,かつ,相手 が真数ならば,に取り出される の近似が,丸めによって得られ

るか又は切捨てによって得られるかは,処理系定義とする。

b)  値 が相手 より大きい精度をもつ日時ならば,に取り出される の近似が,丸めによって得

られるか又は切捨てによって得られるかは,処理系定義とする。

c)

値 が相手 より大きい精度をもつ時間隔ならば,に取り出される の近似が,丸めによって

得られるか又は切捨てによって得られるかは,処理系定義とする。

54)  “9.2  格納代入”

a)  値 が概数で,かつ,相手 が真数ならば,に格納される の近似が,丸めによって得られる

か又は切捨てによって得られるかは,処理系定義とする。

b)  値 が相手 より大きい精度をもつ日時ならば,に格納される の近似が,丸めによって得ら

れるか又は切捨てによって得られるかは,処理系定義とする。

c)

値 が相手 より大きい精度をもつ時間隔ならば,に格納される の近似が,丸めによって得

られるか又は切捨てによって得られるかは,処理系定義とする。

55)  “9.5  データ型組合せの結果”

a)  DTS 中のデータ型の全てが真数ならば,結果の宣言型は,処理系定義の精度をもつ真数とする。

b)  DTS 中のいずれかのデータ型が概数ならば,DTS 中の各データ型は,数でなければならず,結果

の宣言型は,処理系定義の精度をもつ概数とする。

56)  “9.18 XQuery 正規表現照合”

a)  パターン又はフラグの文字レパートリが UCS でないならば,UCS への変換は,処理系定義とす

る。

b)  当該文字列の文字レパートリが UCS でないならば,

XQuery 正規表現一致”の定義は,処理系定

義とする。

57)  “9.19 XQuery 正規表現置換”

a)  パターン,置換文字列又はフラグの文字レパートリが UCS でないならば,UCS への変換は,処

理系定義とする。

b)  当該文字列の文字レパートリが UCS でないならば,細分箇条の結果は,処理系定義とする。

58)  “9.26  順序数生成子の作成”

a) <順序数生成子 MAXVALUE 選択肢>が NO MAXVALUE を指定するか,又は<順序数生成子


1001

X 3005-2:2015 (ISO/IEC 9075-2:2011)

MAXVALUE 選択肢>が指定されないならば,宣言型 DT の処理系定義の<符号付き数定数>である

<順序数生成子最大値>が暗に想定される。

b) <順序数生成子 MINVALUE 選択肢>が NO MINVALUE を指定するか,又は<順序数生成子

MINVALUE 選択肢>が指定されないならば,宣言型 DT の処理系定義の<符号付き数定数>である<

順序数生成子最小値

>が暗に想定される。

59)  “9.27  順序数生成子の変更”

a) <順序数生成子 MAXVALUE 選択肢>が NO MAXVALUE を指定するならば,宣言型 DT の処理系

定義の

<符号付き数定数>である<順序数生成子最大値>が暗に想定される。

b) <順序数生成子 MINVALUE 選択肢>が NO MINVALUE を指定するならば,宣言型 DT の処理系定

義の

<符号付き数定数>である<順序数生成子最小値>が暗に想定される。

60)  “10.1 <時間隔修飾子>”

a) <時間隔先行フィールド精度>の最大値は,処理系定義とするが,2 以上でなければならない。

b) <時間隔小数秒精度>の最大値は,処理系定義とするが,6 以上でなければならない。

61)  “10.4 <ルーチン呼出し>”

a)  Pi が出力 SQL パラメタで,かつ,が SQL ルーチンでないならば,CPVi は,最特定型 Ti の処

理系定義の値とする。

b) <SQL コネクション文>又は<SQL トランザクション文>を<SQL ルーチン本体>が含むならば構文

誤りが発生するかどうかは,処理系定義とする。

c)

新しい

SQL セション文脈 RSC が作成されるとき,現行既定カタログ名,現行既定修飾なしスキ

ーマ名,現行既定文字集合名,現行

SQL セションの SQL パス,SQL パスを定義するテキスト,

現行

SQL セションの現行既定時刻帯時差,全ての動的 SQL 記述子領域の内容,既定変換グルー

プ名を定義するテキスト,利用者によって陽に設定された各利用者定義型に対する利用者定義型

名と変換グループ名との対を定義するテキスト,及び文実行文脈に,処理系定義の値が設定され

る。

d)  が外部ルーチンならば,の<SQL クライアントモジュール定義>中で参照される作成局所一時

表,の<SQL クライアントモジュール定義>に含まれる<一時表宣言>によって定義される宣言局

所一時表,大域拡張動的カーソルでなく,かつ,

SQL クライアントモジュールが の SQL クラ

イアントモジュールである全ての開いているカーソルのカーソル実現値記述子,大域拡張名をも

たない被準備文,及び大域拡張名をもたない

SQL 記述子領域の全ての実現値の識別体を RSC か

ら取り除くかどうかは,処理系定義とする。

e)

が外部ルーチンならば,を含むスキーマへの の結合方法及び結合時機は,処理系定義とす

る。

f)

の実行の完了後に,の<SQL クライアントモジュール定義>中で宣言された開いているカーソ

ルが閉じられ,破壊されるかどうか,RSC に関連付けられた局所一時表が破壊されるかどうか,

及び によって準備された被準備文が解放されるかどうかは,処理系定義とする。

g)  が SQL 呼出し手続ならば,出力 SQL パラメタ又は入出力 SQL パラメタで,かつ,対応する引

数に値が代入されなかった各

SQL パラメタに対して,その対応する引数には,適切な型の処理系

定義の値が設定される。

h)  外部 SQL 呼出ルーチンの外部安全保護特性が IMPLEMENTATION DEFINED ならば,新しい SQL

セション文脈の認可スタックの最上部セル中の利用者識別子及び役割名は,処理系定義とする。


1002

X 3005-2:2015 (ISO/IEC 9075-2:2011)

62)  “10.9 <集約関数>”

a) COUNT が指定されるならば,結果の宣言型は,0 の位取りをもつ処理系定義の真数型とする。

b) SUM 又は AVG が指定されるならば,次による。

i) SUM が指定され,引数の宣言型が位取り の真数ならば,結果の宣言型は,位取り をもつ処

理系定義の真数型とする。

ii) AVG が指定され,引数の宣言型 DT が真数ならば,結果の宣言型は,DT の精度以上の精度及

び DT の位取り以上の位取りをもつ処理系定義の真数型とする。

iii)  引数の宣言型 DT が概数ならば,結果の宣言型は,DT の精度以上の精度をもつ処理系定義の概

数型とする。

c) VAR_POP 又は VAR_SAMP が指定されるならば,結果の宣言型は,処理系定義の概数型とする。

引数の宣言型が概数ならば,結果の精度は,引数の精度以上とする。

d) <2 項集合関数種別>が指定されるならば,次による。

場合:

i) REGR_COUNT が指定されるならば,結果の宣言型は,0 の位取りをもつ処理系定義の真数型

とする。

ii)  そうでなければ,結果の宣言型は,処理系定義の概数型とする。いずれかの引数が概数ならば,

結果の精度は,概数の引数の精度以上でなければならない。

e) <仮説集合関数>が指定されるならば,次による。

場合:

i) RANK 又は DENSE_RANK が指定されるならば,結果の宣言型は,処理系定義の精度及び位取

0 をもつ真数とする。

ii)  そうでなければ,結果の宣言型は,処理系定義の精度をもつ概数とする。

f) PERCENTILE_CONT を指定する<逆分布関数>の<ソート指定>に単純に含まれる<値式>の宣言型

が数ならば,結果の宣言型は,処理系定義の精度をもつ概数とする。

g) <配列集約関数>が指定されるならば,結果の宣言型は,処理系定義の最大基数をもつ配列型とす

る。

63)  “10.10 <ソート指定リスト>”

a) <ナル順序付け>が指定されないならば,処理系定義の<ナル順序付け>が暗に想定される。<ナル

順序付け

>に対する処理系定義の既定値は,<ソート指定リスト>の外側の文脈に依存してはなら

ない。

64)  “9.29  ビュー権限の決定”

a) <認可識別子>  がビューの全ての列に関する UPDATE 権限をもつならば,が に関する

UPDATE 権限をもつかどうかは,処理系定義とする。

b) <認可識別子>  がビューの全ての列に関する INSERT 権限をもつならば,が に関する

INSERT 権限をもつかどうかは,処理系定義とする。

65)  “11.1 <スキーマ定義>”

a) <スキーマ文字集合指定>が指定されないならば,処理系定義の<文字集合指定>を含む<スキーマ

文字集合指定

>が暗に想定される。

b) <スキーマパス指定>が指定されないならば,処理系定義の<スキーマ名リスト>を含む<スキーマ

パス指定

>が暗に想定される。


1003

X 3005-2:2015 (ISO/IEC 9075-2:2011)

c) AUTHORIZATION

<認可識別子>が指定されないならば,SQL セションに対する処理系定義の<認

可識別子

>と等価な<認可識別子>が暗に想定される。

d) <スキーマ定義>を実行するために必要な権限は,処理系定義とする。

66)  “11.8 <参照制約定義>”

a)  参照制約記述子中の参照列の名前のリスト及び被参照列の名前のリストの順序付けは,処理系定

義とするが,対応する列の名前は,各リスト中の対応する位置を占めなければならない。

67)  “11.27 <表期間定義追加>”

a)  既存の行のシステム期間開始列に代入される値は,処理系定義とする。

68)  “11.49 <トリガ定義>”

a) <被トリガ SQL 文>が<SQL トランザクション文>,<SQL コネクション文>,<SQL スキーマ文>,

<動的 SQL 文>又は<SQL セション文>を広く含んではならないかどうかは,処理系定義とする。

b) SQL データを潜在的に修正する SQL 文を<被トリガ動作>が含んではならないかどうかは,処理

系定義とする。

69)  “11.60  <SQL 呼出しルーチン>”

a) READS

SQL

DATA が指定されるならば,SQL データを潜在的に修正する SQL 文を<SQL ルーチ

ン本体

>が含んではならないかどうかは,処理系定義とする。

b) CONTAINS

SQL が指定されるならば,SQL データを潜在的に修正するか又は SQL データを潜在

的に読む

SQL 文を<SQL ルーチン本体>が含んではならないかどうかは,処理系定義とする。

c) DETERMINISTIC が指定されるならば,潜在的に非決定的である<SQL 手続文>を<SQL ルーチン

本体

>が含んではならないかどうかは,処理系定義とする。

d) <SQL コネクション文>,<SQL スキーマ文>,<動的 SQL 文>,又は<SAVEPOINT 文>,<RELEASE

SAVEPOINT 文>若しくは<SAVEPOINT 句>を指定する<ROLLBACK 文>以外の<SQL トランザクシ

ョン文

>を<SQL ルーチン本体>が含んではならないかどうかは,処理系定義とする。

70)  “11.72 <順序数生成子定義>”

a) <順序数生成子データ型選択肢>が指定されないならば,位取り 0 の処理系定義の真数型 DT が暗

に想定される。

71)  “12.4 <役割定義>”

a) <役割定義>を実行するために必要な権限は,処理系定義とする。

72)  “12.7 <REVOKE 文>”

a)  文字集合に関する USAGE 権限の喪失によって,SQL クライアントモジュールを失われるモジュ

ールであると決定することになるとき,その

SQL クライアントモジュールに与える影響は,処理

系定義とする。

73)  “13.1 <SQL クライアントモジュール定義>”

a)  陽に指定されるか又は暗に想定される<スキーマ名>が<カタログ名>を指定しないならば,処理系

定義の

<カタログ名>が暗に想定される。

b) <モジュールパス指定>が指定されないならば,処理系定義の<スキーマ名リスト>を含む<モジュ

ールパス指定

>が暗に想定される。

73.1)  “13.2 <モジュール名句>”

c) <モジュール文字集合指定>が指定されないならば,<SQL 言語文字>中の少なくとも全ての文字を

含む処理系定義の文字集合を指定する

<モジュール文字集合指定>が暗に想定される。


1004

X 3005-2:2015 (ISO/IEC 9075-2:2011)

74)  “13.3 <外部呼出し手続>”

a) <外部呼出し手続>を含む<SQL クライアントモジュール定義>が,等価な<手続名>をもつ<外部呼

出し手続

>を含む別の<SQL クライアントモジュール定義>に関連付けられている SQL エージェン

トに関連付けられるならば,その効果は,処理系定義とする。

b) <外部呼出し手続>を含む<SQL クライアントモジュール定義>が,SQL セションの<認可識別子>

SAI と等価でない陽に指定される<モジュール認可識別子>  MAI をもつならば,陽に指定される<

モジュール認可識別子

>  MAI をもつ<SQL クライアントモジュール定義>中の<外部呼出し手続>

を SAI が呼び出すことができるかどうかは,そのような呼出しに関する制限を含めて,処理系定

義とする。

c)

Interfaces.SQL.CHAR 及び Interfaces.SQL.NCHAR の定義は,処理系定義とするが,それ

ぞれ,

SQL データ型の CHARACTER 及び NATIONAL CHARACTER を提供しなければならない。

d)  Interfaces.SQL.VARYING.CHAR 及び Interfaces.SQL. VARYING.NCHAR の定義は,処理

系 定 義 と す る が , そ れ ぞ れ ,

SQL デ ー タ 型 の CHARACTER VARYING 及 び NATIONAL

CHARACTER VARYING を提供しなければならない。

75)  “13.5  データ型対応”

a) SQL 文字列型に対応する C データ型は,処理系定義とする。

b)  (PIC X に対応付けられる)COBOL 固有の文字集合は,処理系定義とする。

c) SQL 文字列型に対応する Fortran の型 CHARACTER の KIND 属性は,処理系定義とする。

76)  “14.9 <DELETE 文:探索>”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

77)  “14.10 <TRUNCATE TABLE 文>”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

78)  “14.11 <INSERT 文>”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

79)  “14.12 <MERGE 文>”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

80)  “14.14 <UPDATE 文:探索>”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。


1005

X 3005-2:2015 (ISO/IEC 9075-2:2011)

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

81)  “15.1  カーソルを開くことの効果”

a)  現在開いているカーソルに対して可視にならない著しい変更を,SQL 処理系が許さないことが可

能かどうかは,処理系定義とする。

82)  “15.2  結果集合を受け取ることの効果”

a)  受取りカーソルの操作上の戻り可能性特性は,処理系定義とする。

83)  “15.5  位置付け削除の効果”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

c)

CR の結果集合記述子の行の並びから現在行が取り除かれるかどうかは,処理系定義とする。

84)  “15.6  位置付け更新の効果”

a)  著しくない独立の変更を SQL 処理系が許さなくてもよい範囲は,処理系定義とする。

b)  この SQL 文が実行されている SQL トランザクション中で開いている敏感カーソル CR が存在し,

後続の

SQL トランザクション中に CR が保持されたならば,この SQL 文の成功実行の結果とし

て生じる変更が CR に対して可視になるかどうかは,処理系定義とする。

85)  “17.2 <SET TRANSACTION 文>”

a)  トランザクションに対して設定するトランザクション隔離性水準は,表 8“SQL トランザクショ

ン隔離性水準及び三つの現象”で規定するとおりに,陽に指定されるか又は暗に想定される

<隔離

性水準

>が発生させない現象のどれも発生させない処理系定義のトランザクション隔離性水準と

する。

86)  “17.5 <SAVEPOINT 文>”

a) SQL トランザクションごとの保存点の最大個数は,処理系定義とする。

87)  “17.7 <COMMIT 文>”

a)  保持されたカーソルの被準備文以外の被準備文が存在したままとなるかどうかは,処理系定義と

する。

88)  “17.8 <ROLLBACK 文>”

a)  ロールバックが実行される保存点の確立前に現行 SQL トランザクションによって開かれた,現行

SQL トランザクションに関連付けられる SQL クライアントモジュール中の開いているカーソル

の状態は,処理系定義とする。

b)  被準備文が解放されるかどうかは,処理系定義とする。

89)  “18.1 <CONNECT 文>”

a) <コネクション利用者名>が指定されないならば,SQL コネクションに対する処理系定義の<コネ

クション利用者名

>が暗に想定される。

b) <コネクション利用者名>が,<CONNECT 文>を含む<外部呼出し手続>を含む SQL クライアント

モジュールの

<モジュール認可識別子>と同一でなければならないかどうかに関する制限は,処理

系定義とする。


1006

X 3005-2:2015 (ISO/IEC 9075-2:2011)

c) DEFAULT が指定されるならば,既定 SQL サーバを決定する方法は,処理系定義とする。

d)  適切な SQL サーバを決定するために<SQL サーバ名>を用いる方法は,処理系定義とする。

90)  “19.2 <セション利用者識別子設定文>”

a) SQL セション利用者識別子にそれの現在の値の設定を許さないこと除いて,SQL セション利用者

識別子に設定することができる利用者識別子に関する処理系定義の制限が許される。

91)  “19.10 <セション照合順設定文>”

a) <文字集合指定リスト>が<セション照合順設定文>中に指定されないならば,SQL セション照合順

に設定される文字集合は,処理系定義とする。

92)  “20.1 SQL 記述子領域の記述”

a)  処理系定義のデータ型のデータ型コードは,処理系定義の負の値とする。

93)  “20.2 <ALLOCATE DESCRIPTOR 文>”

a)

WITH MAX <実現値>  が指定されないならば,<実現値>に対する 0 より大きい処理系定義の既定

値が暗に想定される。

b) SQL 記述子領域の最大個数及び単一の SQL 記述子領域に対する項目記述子領域の最大個数は,処

理系定義とする。

94)  “20.5 <SET DESCRIPTOR 文>”

a) < 記 述 文 > の 実 行 の 結 果 と し て 得 ら れ る TYPE , LENGTH , OCTET_LENGTH , SCALE ,

COLLATION_CATALOG

COLLATION_SCHEMA

COLLATION_NAME

CHARACTER_SET_CATALOG,CHARACTER_SET_SCHEMA 及び CHARACTER_SET_NAME の

値を,

<EXECUTE 文>,<動的 OPEN 文>又は<動的 FETCH 文>の実行前に変更することに関する

制限は,処理系定義とする。

95)  “20.6 <PREPARE 文>”

a) <準備可能処理系定義文>の形式及び構文規則は,処理系定義とする。

96)  “20.9 <記述文>”

a) <記述子名>のデータ型の文字集合は,処理系定義とする。

b)  SR が単一の SQL 呼出しルーチン を含まないならば,

<CALL 文>に単純に含まれる各<動的パラ

メタ指定

>に対する記述子中の PARAMETER_MODE,PARAMETER_ORDINAL_POSITION,

PARAMETER_SPECIFIC_CATALOG

PARAMETER_SPECIFIC_SCHEMA

PARAMETER_SPECIFIC_NAME には,処理系定義の値が設定される。

97)  “20.11 <出力 USING 句>”

a) <動的 FETCH 文>中で<出力 USING 句>が用いられるならば,<動的 FETCH 文>によって識別され

る動的カーソルを CR とし,カーソル CR に対して,現在の実行に先立って最も新しく実行され

<動的 FETCH 文>があるならば,それの 番目の<相手指定>又は<INTO 句の引数>の最特定型を

LTDT とする。幾つかのことのいずれかが真ならば,例外条件:動的 SQL 誤り  -  制限されたデ

ータ型属性違反  (restricted data type attribute violation)  が引き起こされるかどうかは,処理系定義

とする。

98)  “21.1 <SQL 埋込みホストプログラム>”

a) SCHEMA を指定する<埋込み認可宣言>を が含まないならば,の<モジュール認可句>の<ス

キーマ名

>は,処理系定義とする。

b)  が<埋込み認可宣言>を含まないならば,は,

SCHEMA SN”を指定する<モジュール認可句>


1007

X 3005-2:2015 (ISO/IEC 9075-2:2011)

を含む。ここで,SN は,処理系定義の<スキーマ名>とする。

c) <埋込み文字集合宣言>が指定されないならば,処理系定義の<文字集合指定>を含む<埋込み文字

集合宣言

>が暗に想定される。

d)  各<拡張動的カーソル割当て文>は,<動的カーソル名>を被準備文に関連付ける処理系定義の手続

の,ホスト言語の手続呼出し又はサブルーチン呼出しに置き換えられる。

e) <SQL 埋込みホストプログラム>が<埋込みパス指定>を含まないならば,暗に想定されるモジュー

ルは,処理系定義の

<モジュールパス指定>を含む。

99)  “21.3 <SQL 埋込み Ada プログラム>”

a)  既定の文字集合は,処理系定義とする。

b) Interfaces.SQL.INDICATOR_TYPE に対応する<ホストパラメタデータ型>は,位取り 0 の処理系定

義の真数とする。

100) “21.4 <SQL 埋込み C プログラム>”

a) <C 文字変数>,<C VARCHAR 変数>又は<C CLOB 変数>中で暗に想定される文字集合は,処理系

定義とする。

b)  既定の文字集合は,処理系定義とする。

101) “21.5 <SQL 埋込み COBOL プログラム>”

a) PICTURE,SIGN,USAGE 及び VALUE 句に加えて,<COBOL 変数定義>中に現れてもよい COBOL

データ記述句は,処理系定義とする。

b)  既定の文字集合は,処理系定義とする。

c) <COBOL 整数型>を用いて宣言される変数の<ホストパラメタデータ型>が SMALLINT か,

INTEGER か又は BIGINT かは,処理系定義とする。

102) “21.6 <SQL 埋込み Fortran プログラム>”

a)  既定の文字集合は,処理系定義とする。

b) CHARACTER

KIND=で宣言される変数の<ホストパラメタデータ型>が CHARACTER か又は

NATIONAL CHARACTER かは,処理系定義とする。の値は,Fortran 変数の処理系定義の特性を

決定する。の値は,処理系定義とする。

103) “21.7 <SQL 埋込み MUMPS プログラム>”

a)  既定の文字集合は,処理系定義とする。

104) “21.8 <SQL 埋込み Pascal プログラム>”

a)  既定の文字集合は,処理系定義とする。

105) “21.9 <SQL 埋込み PL/I プログラム>”

a) <PL/I 型指定>及び INITIAL 句に加えて,

<PL/I 変数定義>中に現れてもよい PL/I データ記述句は,

処理系定義とする。

b)  既定の文字集合は,処理系定義とする。

c) <PL/I 型 FIXED BINARY>で宣言される変数の<ホストパラメタデータ型>が SMALLINT か,

INTEGER か又は BIGINT かは,処理系定義とする。

106) “22.1 <直接 SQL 文>”

a)  ナル値を表現する<値指定>は,処理系定義とする。

b) <直接処理系定義文>の形式,構文規則及びアクセス規則は,処理系定義とする。

c)

動作中の

SQL トランザクションに<直接処理系定義文>が関連付けられてもよいかどうかは,処理


1008

X 3005-2:2015 (ISO/IEC 9075-2:2011)

系定義とする。

d) <直接処理系定義文>が SQL トランザクションを開始するかどうかは,処理系定義とする。

107) “23.1 <GET DIAGNOSTICS 文>”

a)  診断領域中の各可変長文字項目の最大長は,ほとんどの場合,処理系定義とする。

b)  処 理 系 定 義 の ク ラ ス コ ー ド 又 は サ ブ ク ラ ス コ ー ド に 対 し て , CLASS_ORIGIN 及 び

SUBCLASS_ORIGIN のために設定される文字列値は,処理系定義とするが,'ISO 9075'であっては

ならない。

c) MESSAGE_TEXT の値は,処理系定義の文字列とする。

d) COMMAND_FUNCTION_CODE の負の値は,処理系定義とし,処理系定義の SQL 文を示す。

e)

条件番号なしで

ALL が指定されるとき,占有条件領域の番号が与えられる順序は,処理系定義と

する。

108) “24.1 SQLSTATE”

a) SQLSTATE パラメタのクラスコード及びサブクラスコードに関連付けられる文字集合は,処理系

定義とする。

b) <数字>'5','6','7','8'若しくは'9'のうちの一つ,又は<単純ラテン大文字>'I','J','K','L','M','N',

'O','P','Q','R','S','T','U','V','W','X','Y'若しくは'Z'のうちの一つで始まるクラス及びサ

ブクラスの値及び意味は,処理系定義とする。処理系定義クラスコードに関連付けられる全ての

サブクラスの値及び意味は,処理系定義とする。

109) “25  適合性”

a) SQL 処理系が必要とするかもしれない追加の<キーワード>のリストのままで,適合しない SQL

言語のフラグ付け又は適合する

SQL 言語の処理の方法は,処理系定義とする。


1009

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 C 
(参考)

処理系依存要素

この附属書は,ISO/IEC 9075-3 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-4 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-9 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-10 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-11 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-13 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,ISO/IEC 9075-14 の“附属書 C  処理系依存要素”によって修正される。

この附属書は,規格に適合する

SQL 処理系の動作が処理系依存であることを,この規格が陽に規定して

いる箇所を参照する。

1)  “4.1.1  データ型の一般的な導入”

a)  データ型の値の物理的な表現は,処理系依存とする。

2)  “4.15.10  表を含む演算”

a)  表を含む演算は,処理系依存の順序でその表中の行を参照する。

3)  “4.15.14  ウィンドウ表”

a) <句内ウィンドウ指定>によって暗に定義されるウィンドウのウィンドウ名は,処理系依存とする。

4)  “4.28.5  SQL 呼出し手続によって戻される結果集合”

a)  その最大個数を超える位置にある結果集合が戻されるかどうかは,処理系依存とする。

5)  “4.30.5  位置付け子”

a)  位置付け子の値は,処理系依存の 4 オクテットの整数値とする。

6)  “4.31  診断領域”

a)  陽に指定されないとき,条件領域限界は,処理系依存とする。

b)  診断領域中の 1 番目の条件が SQLSTATE 値に対応する条件に常に対応することを除いて,診断領

域に格納される条件についての情報の順序は,処理系依存とする。

c)

診断領域スタック中の診断領域の最大数は,処理系依存とする。

7)  “4.33  カーソル”

a) <カーソル指定>が<ORDER BY 句>を含まないか,又は行の順序を完全に指定しない<ORDER BY

>を含むならば,結果集合の行は,<ORDER BY 句>が順序を指定する範囲でだけ定義される順

序をもち,その他の順序は,処理系依存とする。

b)  カーソルを識別する SQL 文の実行中に誤りが発生するとき,開いているカーソルの位置及び状態

に与える影響は,処理系依存とする。

c)

処理依存感度カーソルが開いており,かつ,同じ

SQL トランザクション内から,そのカーソル以

外によって

SQL データに変更が行われるならば,そのカーソルが閉じられる前に,そのカーソル

に対してその変更が可視であるかどうかは,処理系依存とする。

8)  “4.36 SQL トランザクション”

a) SQL 文の実行のために暗に読み込まれるスキーマ定義は,処理系依存とする。


1010

X 3005-2:2015 (ISO/IEC 9075-2:2011)

9)  “4.38 SQL セション”

a)  処理系依存の一意な SQL セション識別子が,各 SQL セションに関連付けられる。

10)  “4.40  クライアントサーバ処理”

a) SQL サーバ上で実効的に実体化される SQL クライアントモジュールの<SQL クライアントモジュ

ール名

>は,処理系依存とする。

b) SQL サーバによる<SQL 手続文>の実行に続いて,SQL クライアント中のその SQL エージェント

の診断領域スタック中に処理系依存の方法で診断情報が渡される。

c) SQL クライアントによって提供される文字レパートリと SQL サーバによって提供される文字レ

パートリとの間の非互換性の診断情報への影響は,処理系依存とする。

11)  “6.7 <列参照>”

a)  QCR がグループ不変列参照であり,かつ,QCR の最特定型が文字列,時刻帯付き日時又は利用

者定義型ならば,QCR は,QCR の修飾する問合せの与えられたグループのどの行中の の値と

も異ならない処理系依存の値を示す。

12)  “6.13 <CAST 指定>”

a)  マルチ集合型が配列型に型変換されるとき,結果中の要素の順序は,処理系依存とする。

13)  “6.28 <数値関数>”

a) <OCCURRENCES_REGEX 関数>が OCTETS を指定し,かつ,<開始位置>で与えられる位置のオ

クテットが文字の最初のオクテットでないならば,

<OCCURRENCES_REGEX 関数>の結果は,処

理系依存とする。

b) <POSITION_REGEX 式>が OCTETS を指定し,かつ,<開始位置>で与えられる位置のオクテット

が文字の最初のオクテットでないならば,

<POSITION_REGEX 式>の結果は,処理系依存とする。

14)  “6.30 <データ列値関数>”

a) <SUBSTRING_REGEX 関数>が OCTETS を指定し,かつ,<開始位置>で与えられる位置のオクテ

ットが文字の最初のオクテットでないならば,

<SUBSTRING_REGEX 関数>の結果は,処理系依

存とする。

b) <TRANSLATE_REGEX 関数>が OCTETS を指定し,かつ,<開始位置>で与えられる位置のオクテ

ットが文字の最初のオクテットでないならば,

<TRANSLATE_REGEX 関数>の結果は,処理系依

存とする。

15)  “6.32 <日時値関数>”

a) SQL 文の実行中の CURRENT_DATE,CURRENT_TIME 及び CURRENT_TIMESTAMP 関数の評価

の時期は,処理系依存とする。

16)  “6.33 <時間隔値式>”

a)  減算のために時間隔をスカラ値に変換するために用いる開始日時は,処理系依存とする。

17)  “6.38 <配列値構成子>”

a) <問合せによる配列値構成子>の結果中の,<ORDER BY 句>によって決定されない配列要素の順序

は,処理系依存とする。

18)  “7.1 <行値構成子>”

a) <行値構成子要素リスト>を指定する<行値構成子>のフィールドの名前は,処理系依存とする。

b) <文脈型付き行値構成子>のフィールドの名前は,処理系依存とする。

19)  “7.3 <表値構成子>”


1011

X 3005-2:2015 (ISO/IEC 9075-2:2011)

a) <表値構成子>又は<文脈型付き表値構成子>の列名は,処理系依存とする。

20)  “7.7 <結合表>”

a) <分割結合表>の結合分割列の宣言型が利用者定義型で,かつ,二つの行に対するその列の比較の

結果が

不定  (Unknown)  になるならば,それらの行の区画への割当ては,処理系依存とする。

21)  “7.9 <GROUP BY 句>”

a)  グループ化列の宣言型が利用者定義型で,かつ,二つの行に対するその列の比較の結果が不定

(Unknown)  になるならば,<GROUP BY 句>の結果中のグループへのこれらの行の割当ては,処理

系依存とする。

b) <探索条件>又は<値式>がグループに適用されるとき,最特定型が文字列,時刻帯付き日時又は利

用者定義型であり,かつ,グループ化列に関数従属である列を参照するグループ不変列参照の値

は,処理系依存とする。

22)  “7.11 <WINDOW 句>”

a)  ウィンドウ構造記述子のウィンドウ順序付け句がないならば,ウィンドウ順序付けは,処理系依

存とする。

b)  ウィンドウ区画内の同位行のウィンドウ順序付けは,処理系依存とするが,そのウィンドウ順序

付けは,順序等価である全てのウィンドウ構造記述子に対して同じでなければならない。それは,

ウィンドウ W1 がウィンドウ W2 のための順序付けウィンドウならば,W1 及び W2 に対しても同

じでなければならない。

23)  “7.12 <問合せ指定>”

a)  列が<AS 句>によって名前付けされず,かつ,単一列参照から導出されないならば,列の名前は,

処理系依存とする。

b) <集合限定子> DISTINCT が指定され,かつ,結果列の最特定型が文字列,時刻帯付き日時又は利

用者定義型ならば,冗長な重複を取り除いた後に,その列に残る正確な値は,処理系依存とする。

24)  “7.13 <問合せ式>”

a) <単純表>が<問合せ指定>でも,<明示表>でもないならば,<単純表>の各列の名前は,処理系依存

とする。

b) <問合せ項>が INTERSECT を直に含み,かつ,オペランドの表の対応する列の対の<列名>が等価

でないならば,結果列は,処理系依存の

<列名>をもつ。

c) <問合せ式本体>が UNION 又は EXCEPT を直に含み,かつ,オペランドの表の対応する列の対の

<列名>が等価でないならば,結果列は,処理系依存の<列名>をもつ。

d) <ORDER

BY 句>を<問合せ式>が単純に含まないならば,その<問合せ式>によって指定される表

中の行の順序付けは,処理系依存とする。

e) <ORDER

BY 句>を<問合せ式>が直に含み,かつ,その<問合せ式>によって指定される表中の二

つ以上の行から成るグループが,

<ORDER BY 句>中に指定された全てのソートキーで異ならない

値を含むならば,そのグループ中のこれらの行の順序付けは,処理系依存とする。

f)

利用者定義型 UDT の利用者定義順序付けによって決定されるとおりに比較が不定  (Unknown)  と

なる,UDT のナルでない二つの値の相対的な順序付けは,処理系依存とする。

25)  “8.2 <比較述語>”

a)  演算 MAX,MIN,DISTINCT 及びグループ化列の参照が可変長文字列を参照するとき,等しい値

の集合から選択される特定の値は,処理系依存とする。


1012

X 3005-2:2015 (ISO/IEC 9075-2:2011)

26)  “8.15 <DISTINCT 述語>”

a)  “8.2 <比較述語>”に従って,等値性に対して V1 と V2 とを比較した結果が不定  ならば,結果が

真  か又は偽  かは,処理系依存とする。

27)  “9.4 SQL サーバからホスト言語への値の受渡し”

a)  ホスト言語が ADA で,かつ,値が代入されなかったならば,値は,処理系依存とする。

28)  “10.4 <ルーチン呼出し>”

a)  値 Vi を得るために,処理系依存の順序で,SAL 中の各 SQL 引数 Ai が評価される。

b)  が,の言語のための規格又は他の規定に従って規格に適合するプログラムでないならば,P

の実行の結果は,処理系依存とする。

c)

外部ルーチンが

DETERMINISTIC を指定し,かつ,同一の SQL 引数値リストでのそのルーチンの

異なる実行が同一の結果を生じないならば,結果は,処理系依存とする。

d)  から戻される値は,処理系依存の方法で SQL 処理系に渡される。

29)  “10.9 <集約関数>”

a) MAX 又は MIN の引数の宣言型が利用者定義型で,

かつ,二つの値の比較の結果が

不定  (Unknown)

になるならば,最大値又は最小値は,処理系依存とする。

b) <配列集約関数>が ORDER BY を指定しないならば,結果配列中の要素の順序付けは,処理系依

存とする。

30)  “10.10 <ソート指定リスト>”

a)  PVi 及び QVi がナル値でなく,かつ,“PVi <比較演算子> QVi”の結果が不定  (Unknown)  なら

ば,PVi と QVi との相対的な順序付けは,処理系依存とする。

b) <ソート指定>に関して異ならない二つの行の相対的な順序付けは,処理系依存とする。

31)  “11.6 <表制約定義>”

a) <制約名定義>を指定しない制約の<制約名>は,処理系依存とする。

32)  “11.8 <参照制約定義>”

a)  異ならない様々な値のうちで波及のために用いる特定の値は,処理系依存とする。

33)  “11.15 <列 NOT NULL 句設定>”

a)  の列記述子に含まれる関連付けられた表制約定義の制約名は,処理系依存とする。

34)  “11.32 <ビュー定義>”

a)  参照型が導出表現をもつ参照可能ビューの自己参照列の値を計算するために用いる式は,処理系

依存とする。

35)  “11.34 <定義域定義>”

a) <制約名定義>を指定しない制約の<制約名>は,処理系依存とする。

36)  “11.43 <照合順定義>”

a)  照合順が特に指定されない文字集合の照合順は,処理系依存とする。

37)  “11.51 <利用者定義型定義>”

a) <特定メソッド名>が指定されないならば,<スキーマ名>が SN と等価な処理系依存の<特定メソ

ッド名

>が暗に想定される。

38)  “11.56 <原メソッド指定追加>”

a)  PORMS が<特定メソッド名>を指定しないならば,<スキーマ名>が SN と等価である処理系依存

<特定メソッド名>が暗に想定される


1013

X 3005-2:2015 (ISO/IEC 9075-2:2011)

39)  “11.57 <置換メソッド指定追加>”

a)  POVMS が<特定メソッド名>を指定しないならば,<スキーマ名>が SN と等価である処理系依存

<特定メソッド名>が暗に想定される。

40)  “11.60 <SQL 呼出しルーチン>”

a) SQL 呼出しルーチンが SQL 呼出し関数ならば,外部ルーチンから戻される値は,処理系依存の方

法で

SQL 処理系に受け渡される。

41)  “13.1 <SQL クライアントモジュール定義>”

a) <SQL クライアントモジュール定義>中の<外部呼出し手続>の呼出しを実行する SQL エージェン

トが,その

<SQL クライアントモジュール定義>の<LANGUAGE 句>によって指定されたプログラ

ム言語の仕様に適合するプログラムでないならば,その効果は,処理系依存とする。

b)  二つ以上の Ada タスクからの<外部呼出し手続>の呼出しを SQL エージェントが実行するならば,

その結果は,処理系依存とする。

c) SQL エージェントが不意に終了したかどうかの決定は,処理系依存とする。

42)  “13.3 <外部呼出し手続>”

a) <外部呼出し手続>の呼出しを実行する SQL エージェントが,<外部呼出し手続>の呼出し元言語

によって指定されるプログラム言語の仕様に適合するプログラムでないならば,その効果は,処

理系依存とする。

43)  “13.4 <SQL 手続文>”

a)  が<SELECT 文:単一行>又は<FETCH 文>で,かつ,終了条件:データなし  (no data)  が引き起

こされるか,又は例外条件が引き起こされるならば,PNi が 中の<相手指定>中で参照される各
PIi の値は,処理系依存とする。

44)  “14.5 <FETCH 文>”

a)  状態パラメタ以外で<FETCH 文>によって戻される値の,<取出し相手リスト>中の相手への代入

の順序は,処理系依存とする。

b) <SELECT 文:単一行>の実行中の,相手への値の代入中に誤りが発生するならば,状態パラメタ

以外の相手の値は,処理系依存とする。

c)

相手への値の代入中に例外条件が引き起こされるならば,全ての相手の値は,処理系依存とし,

CR は,現在行の上に位置付けられたままとする。

d) <導出列>の導出中に例外条件が引き起こされるとき,CR が現在行の上に位置付けられたままか

どうかは,処理系依存である。

45)  “14.7 <SELECT 文:単一行>”

a)  状態パラメタ以外で<SELECT 文:単一行>によって戻される値の,<選択相手リスト>中の相手へ

の代入の順序は,処理系依存とする。

b) <問合せ指定>の結果の基数が 1 より大きいならば,<選択相手リスト>によって識別される相手に

値が代入されるかどうかは,処理系依存とする。

c) <SELECT 文:単一行>の実行中の,相手への値の代入中に誤りが発生するならば,状態パラメタ

以外の相手の値は,処理系依存とする。

46)  “14.11 <INSERT 文>”

a)  導出自己参照列の値の生成は,処理系依存とする。

47)  “14.12 <MERGE 文>”


1014

X 3005-2:2015 (ISO/IEC 9075-2:2011)

a)  導出自己参照列の値の生成は,処理系依存とする。

48)  “14.16 <一時表宣言>”

a)  一時表を含むスキーマの<スキーマ名>は,処理系依存とする。

49)  “15.6  位置付け更新の効果”

a)  実表の列 が修正され,<UPDATE 文:位置付け>によって識別される<カーソル指定>の<問合せ

>に単純に含まれるいずれかの<ソートキー>の<値式>の評価が を参照したならば,CR の位置

は,処理系依存とする。

50)  “15.19  トリガの実行”

a)  TR が行レベルトリガならば,ST 中の遷移が取られる順序は,処理系依存とする。

51)  “17.2 <SET TRANSACTION 文>”

a) <条件数>が指定されないならば,1 以上の処理系依存の値が暗に想定される。

b) <条件数>が指定され,<条件数>に対する処理系依存の最大値を超えるならば,その最大値を用い

る。

52)  “18.1 <CONNECT 文>”

a)  現行 SQL セションの持続トランザクション特性の条件領域限界は,1 以上の処理系依存の値とす

る。

53)  “18.3 <DISCONNECT 文>”

a) ALL が指定されるならば,は,現行の SQL エージェントによる<CONNECT 文>によって確立さ

れ,かつ,

<DISCONNECT 文>によってまだ切断されていない全ての SQL コネクションを,処理

系依存の順序で表現するリストとする。

54)  “20.2 <ALLOCATE DESCRIPTOR 文>”

a) SQL 記述子領域が割り当てられるとき,

LEVEL 以外の)フィールドの値は,処理系依存とする。

55)  “20.4 <GET DESCRIPTOR 文>”

a) <GET

DESCRIPTOR 文>中で例外条件が引き起こされるならば,<単純相手指定 1>及び<単純相手

指定

2>によって指定される全ての相手の値は,処理系依存とする。

b) <動的パラメタ指定>に対して,UNNAMED の値は,1 とし,NAME の値は,処理系依存とする。

c)

値が未定義のどのフィールドに対しても,

<GET DESCRIPTOR 文>によって取り出される値は,

処理系依存とする。

56)  “20.5 <SET DESCRIPTOR 文>”

a)  DIN が TYPE ならば,IDA 中の TYPE 及び LEVEL 以外の全てのフィールドには,処理系依存の

値が設定される。

b) <SET

DESCRIPTOR 文>中で例外条件が引き起こされるならば,<SET DESCRIPTOR 文>中で指定

される項目記述子領域の全ての要素の値は,処理系依存とする。

57)  “20.9 <記述文>”

a) SQL 項目記述子領域が設定されるならば,TYPE の特定の値に対して適用可能でないフィールド

には,処理系依存の値が設定される。

b)  受取りカーソルの<カーソル指定>を準備するために用いる<SQL 文名>は,処理系依存とする。

58)  “20.10 <入力 USING 句>”

a) <入力 DESCRIBE 文>が用いられるとき,動的 SQL 記述子領域構造中の NAME,DATA 及び

INDICATOR の値は,処理系依存とする。TYPE が文字列型又は 2 進オクテット長大オブジェクト


1015

X 3005-2:2015 (ISO/IEC 9075-2:2011)

型を示すならば,

SCALE 及び PRECISION の値は,処理系依存とする。TYPE が真数型又は概数

型を示すならば,

LENGTH 及び OCTET_LENGTH の値は,処理系依存とする。TYPE がブール型

を示すならば,

PRECISION,SCALE,LENGTH 及び OCTET_LENGTH の値は,処理系依存とす

る。

59)  “20.11 <出力 USING 句>”

a) <出力 DESCRIBE 文>が実行されるとき,

DATA 及び INDICATOR の値は,処理系依存とする。TYPE

が文字列型又は

2 進オクテット長大オブジェクト型を示すならば,SCALE 及び PRECISION の値

は,処理系依存とする。

TYPE が真数型又は概数型を示すならば,LENGTH 及び OCTET_LENGTH

の値は,処理系依存とする。

TYPE がブール型を示すならば,PRECISION,SCALE,LENGTH 及

OCTET_LENGTH の値は,処理系依存とする。

60)  “20.13 <EXECUTE IMMEDIATE 文>”

a) <EXECUTE

IMMEDIATE 文>が実行されるときに準備される文の<文名>は,処理系依存とする。

61)  “20.18 <動的 FETCH 文>”

a)  相手への値の代入中に例外条件が引き起こされるならば,全ての相手の値は,処理系依存とする。

62)  “21.1 < SQL 埋込みホストプログラム>”

a) <SQL 埋込みホストプログラム>から導出される暗に想定される<SQL クライアントモジュール定

>の<SQL クライアントモジュール名>は,処理系依存とする。

b) <SQL 埋込みホストプログラム>が<埋込み認可宣言>を含まないならば,<SQL 埋込みホストプロ

グラム

>から導出される暗に想定される<SQL クライアントモジュール定義>の<モジュール認可

識別子

>は,処理系依存とする。

c) <SQL 埋込みホストプログラム>から導出される暗に想定される<SQL クライアントモジュール定

>中の各<カーソル宣言>中で,各<埋込み変数名>は,互いに異なる処理系依存の<ホストパラメ

タ名

>に一貫して置き換えられる。

d) <SQL 埋込みホストプログラム>から導出される暗に想定される<SQL クライアントモジュール定

>中の各<外部呼出し手続>の<手続名>は,処理系依存とする。

e) <SQL 埋込みホストプログラム>から導出される暗に想定される<SQL クライアントモジュール定

>中の各<外部呼出し手続>中で,各<埋込み変数名>は,互いに異なる処理系依存の<ホストパラ

メタ名

>に一貫して置き換えられる。

f) <OPEN 文>以外の<SQL 手続文>に対して,<SQL 埋込みホストプログラム>から導出される暗に想

定される

<SQL クライアントモジュール定義>中の一つの<外部呼出し手続>が,<SQL 埋込みホス

トプログラム

>中の二つ以上の<SQL 手続文>に対応できるかどうかは,処理系依存とする。

g) <SQL 埋込みホストプログラム>から導出される暗に想定される<SQL クライアントモジュール定

>中の各<外部呼出し手続>中で,<ホストパラメタ宣言>の実現値の順序は,処理系依存とする。

63)  “22.1 <直接 SQL 文>”

a) <COMMIT 文>又は<ROLLBACK 文>が実行される。回復不可能な誤りが発生したか,SQL の直接

起動が不意に終了したか,又はいずれかの強制制約が満たされないならば,

<ROLLBACK 文>が

実行される。そうでなければ,これらの

SQL 文のどちらが実行されるかの選択は,処理系依存と

する。

SQL の直接起動が不意に終了したかどうかの決定は,処理系依存とする。

64)  “23.1 <GET DIAGNOSTICS 文>”

a)  直接の結果として,<DELETE 文:探索>,<INSERT 文>,<MERGE 文>又は<UPDATE 文:探索>


1016

X 3005-2:2015 (ISO/IEC 9075-2:2011)

の実行にならない

SQL 文の実行の後の ROW_COUNT の値は,処理系依存とする。

b) <条件番号>が 1 以外の値をもつならば,<条件番号>の値と,その SQL 文に対する一般規則の評

価中に引き起こされた特定の条件との間の関連付けは,処理系依存とする。

c) ALL が指定されるとき,特定の条件領域の文情報項目及び条件情報領域が存在する順序は,処理

系依存とする。


1017

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 D 
(参考)

削除予定機能

この附属書は,JIS X 3005-1 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-3 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-4 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-9 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-10 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-11 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-13 の“附属書 D  削除予定機能”によって修正される。

この附属書は,ISO/IEC 9075-14 の“附属書 D  削除予定機能”によって修正される。

次の機能については,この規格の改正で将来削除することを意図している。

1)  機能 T141“SIMILAR 述語”


1018

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 E

(参考)

ISO/IEC 9075:2008 との非互換性

この附属書は,ISO/IEC 9075-3 の“附属書 E ISO/IEC 9075:2003 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-4 の“附属書 E ISO/IEC 9075:2008 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-9 の“附属書 E ISO/IEC 9075:2003 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-10 の“附属書 E ISO/IEC 9075:2003 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-11 の“附属書 E ISO/IEC 9075:2008 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-13 の“附属書 E ISO/IEC 9075:2003 との非互換性”によって修正される。

この附属書は,ISO/IEC 9075-14 の“附属書 E ISO/IEC 9075:2008 との非互換性”によって修正される。

この規格のこの版は,JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)で規定されたデータベース言語 SQL の前

の版との幾つかの非互換機能を導入する。

この附属書中で明記されていない限り,データベース言語

SQL の機能及び能力は,JIS  X  3005-2:2010

(ISO/IEC 9075-2:2008)と互換性がある。

1)  多くの<予約語>が言語に追加された。これらの<予約語>は,次のとおりである。

 ARRAY_MAX_CARDINALITY

 CONTAINS

 EQUALS

 FIRST_VALUE

 LAG

 LAST_VALUE

 LEAD

 NTH_VALUE

 NTILE

 OFFSET

 PERCENT

 PERIOD

 PORTION

 PRECEDES

 SUCCEEDS

 SYSTEM_TIME

 TRIM_ARRAY

 VERSIONING

2)  JIS X 3005-1:2010 (ISO/IEC 9075-1:2008)では,SQL プロファイル (SQL Profiles) がデータベース言

SQL に対して定義されていた。この規格のこの版では,SQL プロファイルの定義が削除された。

3)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,機能 T052“行型に対する MAX 及び MIN”が行型の

値に関する

MAX 演算及び MIN 演算を提供していた。JIS X 3005-2 (ISO/IEC 9075-2)  のこの版では,

その機能が削除され,規定で本質的に提供されるサポートが削除された。


1019

X 3005-2:2015 (ISO/IEC 9075-2:2011)

4)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,参照可能ビューの基底表が<問合せ名>として定義さ

れることを許していた。これは,もはや禁止された。

5)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,次のシナリオが許されていた。潜在的に非決定的で

ない参照可能ビューRV を作成する。(CHECK OPTION,検査制約又は表明によって,)RV が決定的

であるという事実に依存するものを作成し,その後,潜在的に非決定的な RV の下位ビューを追加

する。このシナリオは,もはや禁止された。

6)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,更新可能な参照可能ビューの下位ビューが更新可能

でないことを許していた。これは,もはや禁止された。さらに,参照可能ビューの更新可能な継承

列は,継承列の親列によって参照される基底表中の列と同じ列を参照しなければならない。

7)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008),ISO/IEC 9075-4:2008 及び ISO/IEC 9075-11:2008 では,機

能 ID の T322 及び T332 を一貫性をもって用いていなかった。これらは,この規格群の幾つかの規

格中で異なる三つの機能を識別していた。この規格群のこの版では,これらの三つの機能を識別す

るために,機能 IDT322T332 及び T341)を一貫性をもって用いた。

8)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,<PREPARE 文>は,無条件で,トランザクション開始

文であった。JIS X 3005-2 (ISO/IEC 9075-2)  のこの版では,<PREPARE 文>がトランザクションを開

始するかどうかは,

<PREPARE 文>が実行されるときに<PREPARE 文>によって参照される<SQL 文

変数

>の内容に依存する。

9)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,受取りカーソルは,<拡張カーソル名>によって参照

可能な種類の拡張動的カーソルであった。JIS X 3005-2 (ISO/IEC 9075-2)  のこの版では,受取りカ

ーソルは,

<カーソル名>をもち,拡張動的カーソルではない。

10)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,<出力 DESCRIBE 文>の DESCRIBE CURSOR 選択肢

は,拡張動的カーソルに適用可能であった。JIS  X  3005-2  (ISO/IEC  9075-2)  のこの版では,

DESCRIBE CURSOR 選択肢は,受取りカーソルだけに限定された(拡張動的カーソルは,拡張動的

カーソルの被準備文を記述することによって,今でもまだ記述できる。

)。

11)  JIS X 3005-2:2010 (ISO/IEC 9075-2:2008)では,CHARACTER LARGE OBJECT に対するホスト言語

データ構造体の長さ部分は,ホスト言語から

SQL サーバに移動させるとき,文字単位で測られたが,

逆方向はオクテット単位で測られた。JIS X 3005-2 (ISO/IEC 9075-2)  のこの版では,長さ部分は,

どちらの方向でも,宣言型の

<文字長単位>に依存して文字単位か又はオクテット単位のいずれかの

同じ単位で測られる。


1020

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 F

(参考)

SQL の機能の分類

この附属書は,ISO/IEC 9075-3 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-4 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-9 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-10 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-11 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-13 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,ISO/IEC 9075-14 の“附属書 F SQL の機能の分類”によって修正される。

この附属書は,この規格中で規定している機能の分類を記述する。

表 38“必須機能の機能分類及び定義”は,この規格中で規定している中核 SQL の SQL 言語の機能の分

類を含む。表 39“選択機能の機能分類”は,この規格中で規定している中核 SQL でない SQL 言語の機能

の分類を含む。

これらの表では,最初の列は,表の行の位置を素早く示すために用いてもよい項番を含む。その他の点

では,これらの値は,役に立たず,不変ではない。すなわち,これらの値は,JIS X 3005 (ISO/IEC 9075)  規

格群の将来の版において,又は技術的正誤票によってさえも予告なく変更されることがある。

表 38“必須機能の機能分類及び定義”及び表 39“選択機能の機能分類”の“機能 ID”列は,表に含ま

れる各機能及び各副機能の正式な識別を示す。

表 38“必須機能の機能分類及び定義”及び表 39“選択機能の機能分類”の“機能名”列は,機能 ID の

値に関連付けられている機能又は副機能の簡潔な記述を含む。

表 38“必須機能の機能分類及び定義”の“機能の説明”列は,この規格の必須機能の定義だけを与える。

この定義は,全ての構文規則,アクセス規則及び適合性規則の制約を前提として,各機能で提供される特

定の言語要素の表示から成る。

表 39“選択機能の機能分類”は,機能の定義を与えない。それらの機能の定義は,適合性規則中に含ま

れ,“附属書 A SQL 適合性の要約”中で更に要約されている。

表 38-必須機能の機能分類及び定義

機能 ID 

機能名 

機能の説明 

1

E011

数データ型

  “6.1 <データ型>”:数の式,数定数,数の比較及び数の代入を

含む

<数型>。

2 E011-01

INTEGER 及び SMALLINT デ
ータ型(その全てのつづりを
含む。

  “5.2 <トークン>及び<分離符号>”

<予約語>の INT,INTEGER

及び

SMALLINT。

  “5.3 <定数>”:[<符号>] <符号なし整数>

  “6.1 <データ型>”:INTEGER 及び SMALLINT の<真数型>。

  “13.5  データ型対応”

:提供している全ての言語の

INTEGER 及

SMALLINT の型対応。


1021

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

3 E011-02

REAL,DOUBLE PRECISION
及び

FLOAT データ型

  “5.2  <トークン>及び<分離符号>”:<予約語>の REAL,

DOUBLE,FLOAT 及び PRECISION。

  “5.3 <定数>”:[<符号>] <概数定数>

  “6.1 <データ型>”:<概数型>。

  “13.5  データ型対応”:提供している全ての言語の REAL,

DOUBLE PRECISION 及び FLOAT の型対応。

4 E011-03

DECIMAL 及び NUMERIC デ
ータ型

  “5.2 <トークン>及び<分離符号>”

<予約語>の DEC,DECIMAL

及び

NUMERIC。

  “5.3 <定数>”:[<符号>] <真数定数>。

  “6.1 <データ型>”:DECIMAL 及び NUMERIC の<真数型>。

  “13.5  データ型対応”:提供している全ての言語の DECIMAL

及び

NUMERIC の型対応。

5 E011-04

算術演算子

  “6.27 <数値式>”:<数一次子>が<値式一次子>のとき。

6 E011-05

数の比較

  “8.2 <比較述語>”

<表副問合せ>及び機能 F131“グループ操作”

の提供なしで,数データ型に対して。

7 E011-06

数データ型間の暗黙の型変換

  “8.2 <比較述語>”:数データ型のどの型の値も,互いに比較す

ることができる。そのような値は,それらの代数値に関して比
較される。

  “9.1  取出し代入”及び“9.2  格納代入”:ある数型の値は,丸

め,切捨て及び範囲外の条件に従って,別の数型に代入するこ
とができる。

8

E021

文字列型

  “6.1 <データ型>”:文字の式,文字定数,文字の比較,文字の

代入及び文字データに関するその他の操作を含む

<文字列型>。

9 E021-01

CHARACTER データ型(その
全てのつづりを含む。

  “5.2  <トークン>及び<分離符号>”:<予約語>の CHAR 及び

CHARACTER。

  “6.1 <データ型>”:CHARACTER の<文字列型>。

  “6.29 <データ列値式>”:CHARACTER 型の値に対して。

  “ 13.5  デ ー タ 型 対 応 ”: 提 供 し て い る 全 て の 言 語 の

CHARACTER の型対応。

10 E021-02 CHARACTER

VARYING デー

タ型(その全てのつづりを含
む。

  “5.2 <トークン>及び<分離符号>”

<予約語>の VARCHAR 及び

VARYING。

  “6.1 <データ型>”:CHARACTER VARYING の<文字列型>”。

  “6.29 <データ列値式>”

CHARACTER VARYING 型の値に対し

て。

  “ 13.5  デ ー タ 型 対 応 ”: 提 供 し て い る 全 て の 言 語 の

CHARACTER VARYING の型対応。

11 E021-03 文字定数

  “5.3 <定数>”:<引用符>[<文字表現>...]<引用符>。

12 E021-04 CHARACTER_LENGTH 関数

  “6.28 <数値関数>”:<CHAR_LENGTH 式>。

13 E021-05 OCTET_LENGTH 関数

  “6.28 <数値関数>”:<OCTET_LENGTH 式>。

14 E021-06 SUBSTRING 関数

  “6.30 <データ列値関数>”:<文字部分列関数>。

15 E021-07 文字連結

  “6.29 <データ列値式>”:<連結>式。

16 E021-08 UPPER 及び LOWER 関数

  “6.30 <データ列値関数>”:<大文字小文字変換>関数。

17 E021-09 TRIM 関数

  “6.30 <データ列値関数>”:<TRIM 関数>。

18 E021-10 固定長文字列型と可変長文字

列型との間の暗黙の型変換

  “8.2 <比較述語>”

CHARACTER 又は CHARACTER VARYING

データ型のいずれかの型の値は,互いに比較することができる。

  “9.1  取出し代入”及び“9.2  格納代入”:CHARACTER 又は

CHARACTER VARYING データ型のいずれかの型の値は,切捨
ての条件に従って,他の型に代入することができる。


1022

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

19 E021-11 POSITION 関数

  “6.28 <数値関数>”:<POSITION 式>。

20 E021-12 文字の比較

  “8.2 <比較述語>”

<表副問合せ>及び機能 F131“グループ操作”

の提供なしで,

CHARACTER 及び CHARACTER VARYING デー

タ型に対して。

21

E031

識別子 

  “5.2  <トークン>及び<分離符号>”:<通常識別子>及び<区切り

識別子

>。

22 E031-01 区切り識別子

  “5.2 <トークン>及び<分離符号>”:<区切り識別子>。

23 E031-02 小文字識別子

  “5.2 <トークン>及び<分離符号>”

<通常識別子>中のアルファ

ベット文字は,大文字又は小文字のどちらであってもよい(非
区切り識別子が大文字だけから成る必要はないことを意味す
る。

24 E031-03 後続する下線文字

  “5.2  <トークン>及び<分離符号>”:<通常識別子>中の最後の<

識別子部分

>が<下線文字>であってもよい。

25

E051

基本問合せ指定 

  “7.12  <問合せ指定>”:機能 F131“グループ操作”の提供なし

で,

<表参照>が,<表名>である<表名又は問合せ名>のとき。

26 E051-01 SELECT

DISTINCT

  “7.12 <問合せ指定>”

:副機能 E051-02 から E051-09 までなしで,

DISTINCT の<集合限定子>あり。

27 E051-02 GROUP

BY 句

  “7.4  <表式>”:副機能 E051-04 から E051-09 までなしでの

<GROUP BY 句>。

  “7.9 <GROUP BY 句>”

<選択リスト>中の全ての非集約化列を

<GROUP BY 句>が含まなければならないという制約,及び
<GROUP BY 句>中のどの列も<選択リスト>中に現れなければ
ならないという制約付きで。

28 E051-04 <選択リスト>中にない列を含

むことができる

GROUP BY

  “7.9 <GROUP BY 句>”

<GROUP BY 句>中のどの列も<選択リ

スト

>中に現れなければならないという制約なし。

29 E051-05 再命名できる選択リスト項目

  “7.12 <問合せ指定>”:<AS 句>。

30 E051-06 HAVING 句

  “7.4 <表式>”:<HAVING 句>。

  “7.10 <HAVING 句>”

31 E051-07 選択リスト中の修飾付き*

  “7.12 <問合せ指定>”:<修飾付きアスタリスク>。

32 E051-08 FROM 句中の相関名

  “7.6 <表参照>”:[ AS ] <相関名>

33 E051-09 FROM 句中での列名の再命名

  “7.6  <表参照>”:[ AS ] <相関名> [ <左括弧> <導出列リ

スト> <右括弧> ]

34

E061

基本述語及び探索条件 

  “8.21 <探索条件>”及び“8.1 <述語>”

35 E061-01 比較述語

  “8.2 <比較述語>”:<表副問合せ>の提供なしで,提供している

データ型に対して。

36 E061-02 BETWEEN 述語

  “8.3 <BETWEEN 述語>”

37 E061-03 値のリスト付きの IN 述語

  “8.4 <IN 述語>”:<表副問合せ>の提供なしで。

38 E061-04 LIKE 述語

  “8.5 <LIKE 述語>”:[ ESCAPE <エスケープ文字> ]  なし。

39 E061-05 LIKE 述語:ESCAPE 句

  “8.5 <LIKE 述語>”:[ ESCAPE <エスケープ文字> ]  あり。

40 E061-06 NULL 述語

  “8.8 <NULL 述語>”:機能 F481“拡張 NULL 述語”なし。

41 E061-07 限定比較述語

  “8.9 <限定比較述語>”:<表副問合せ>の提供なし。

42 E061-08 EXISTS 述語

  “8.10 <EXISTS 述語>”

43 E061-09 比較述語中の副問合せ

  “8.2 <比較述語>”:<表副問合せ>の提供ありで,提供している

データ型に対して。

44 E061-11 IN 述語中の副問合せ

  “8.4 <IN 述語>”:<表副問合せ>の提供あり。

45 E061-12 限定比較述語中の副問合せ

  “8.9 <限定比較述語>”:<表副問合せ>の提供あり。

46 E061-13 相関副問合せ

  “8.1  <述語>”:外側の問合せ中の列への相関参照として,<表

副問合せ

>中で<相関名>を用いることができるとき。


1023

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

47 E061-14 探索条件

  “8.21 <探索条件>”

48

E071

基本問合せ式 

  “7.13 <問合せ式>”

49 E071-01 UNION

DISTINCT 表演算子

  “7.13 <問合せ式>”:UNION [ DISTINCT ]  の提供あり。

50 E071-02 UNION

ALL 表演算子

  “7.13 <問合せ式>”:UNION ALL  の提供あり。

51 E071-03 EXCEPT

DISTINCT 表演算子

  “7.13 <問合せ式>”:EXCEPT [ DISTINCT ]  の提供あり。

52 E071-05 表演算子によって合成され,

正確に同じデータ型をもつ必
要がない列

  “7.13 <問合せ式>”

UNION 及び EXCEPT によって合成される

列が,正確に同じデータ型をもつ必要はない。

53 E071-06 副問合せ中の表演算子

  “7.13  <問合せ式>”:<表副問合せ>が UNION 又は EXCEPT を

指定できる。

54

E081

基本権限 

  “12.3 <権限>”

55 E081-01 表レベルでの SELECT 権限

  “12.3 <権限>”:<権限列リスト>なしの SELECT の<動作>。

56 E081-02 DELETE 権限

  “12.3 <権限>”:DELETE の<動作>。

57 E081-03 表レベルでの INSERT 権限

  “12.3 <権限>”:<権限列リスト>なしの INSERT の<動作>。

58 E081-04 表レベルでの UPDATE 権限

  “12.3 <権限>”:<権限列リスト>なしの UPDATE の<動作>。

59 E081-05 列レベルでの UPDATE 権限

  “12.3  <権限>”:UPDATE  <左括弧> <権限列リスト> <右括弧>

<動作>。

60 E081-06 表 レ ベ ル で の REFERENCES

権限

  “12.3 <権限>”:<権限列リスト>なしの REFERENCES の<動作

>で。

61 E081-07 列 レ ベ ル で の REFERENCES

権限

  “12.3 <権限>”:REFERENCES <左括弧> <権限列リスト> <右括

>  の<動作>。

62

E081-08

WITH GRANT OPTION

  “12.2 <GRANT 権限文>”:WITH GRANT OPTION

63 E081-09 USAGE 権限

  “12.3 <権限>”:USAGE の<動作>。

64 E081-10 EXECUTE 権限

  “12.3 <権限>”:EXECUTE の<動作>。

65

E091

集合関数 

  “6.9 <集合関数指定>”

66 E091-01 AVG

  “6.9 <集合関数指定>”:AVG の<計算操作>。

67 E091-02 COUNT

  “6.9 <集合関数指定>”:COUNT の<計算操作>。

68 E091-03 MAX

  “6.9 <集合関数指定>”:MAX の<計算操作>。

69 E091-04 MIN

  “6.9 <集合関数指定>”:MIN の<計算操作>。

70 E091-05 SUM

  “6.9 <集合関数指定>”:SUM の<計算操作>。

71 E091-06 ALL 限定子

  “6.9 <集合関数指定>”:ALL の<集合限定子>。

72 E091-07 DISTINCT 限定子

  “6.9 <集合関数指定>”:DISTINCT の<集合限定子>。

73

E101

基本データ操作 

  “14  データ操作”:<INSERT 文>,<DELETE 文:探索>及び

<UPDATE 文:探索>。

74 E101-01 INSERT 文

  “14.11 <INSERT 文>”:<文脈型付き表値構成子>が,単一にす

ぎない

<文脈型付き行値式>から成り得るとき。

75 E101-03 探索 UPDATE 文

  “14.14 <UPDATE 文:探索>”

:機能 E153“副問合せのある更新

可能な問合せ”又は機能 F221“明示既定値”のいずれかの提供
なし。

76 E101-04 探索 DELETE 文

  “14.9 <DELETE 文:探索>”

77 E111

単一行 SELECT  

  “14.7 <SELECT 文:単一行>”:機能 F131“グループ操作”の

提供なし。

78 E121

基本カーソル提供 

  “14  データ操作”:<カーソル宣言>,<OPEN 文>,<FETCH 文

>,<CLOSE 文>,<DELETE 文:位置付け>及び<UPDATE 文:
位置付け

>。


1024

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

79 E121-01 DECLARE

CURSOR

  “14.1 <カーソル宣言>”

<ソートキー>中の各<値式>が<列参照

>でなければならず,その<列参照>が<選択リスト>中になけれ
ばならず,かつ,

<カーソル保持可能性>が指定されないとき。

80 E121-02 選択リスト中にある必要がな

ORDER BY 列

  “14.1  <カーソル宣言>”:<列参照>が<選択リスト>中にもある

必要がないように,副機能 E121-01 を拡張。

81 E121-03 ORDER

BY 句中の値式

  “14.1  <カーソル宣言>”:<ソートキー>中の<値式>が<列参照>

である必要がないように,副機能 E121-01 を拡張。

82 E121-04 OPEN 文

  “14.4 <OPEN 文>”

83 E121-06 位置付け UPDATE 文

  “14.13 <UPDATE 文:位置付け>”

:機能 E153“副問合せのある

更新可能な問合せ”又は機能 F221“明示既定値”のいずれかの
提供なし。

84 E121-07 位置付け DELETE 文

  “14.8 <DELETE 文:位置付け>”

85 E121-08 CLOSE 文

  “14.6 <CLOSE 文>”

86 E121-10 FETCH 文:暗に想定される

NEXT

  “14.5 <FETCH 文>”

87 E121-17 WITH

HOLD カーソル

  “14.1 <カーソル宣言>”

:ここで,

<ソートキー>中の<値式>が<

列参照

>である必要はなく,<選択リスト>中にある必要はなく,

かつ,

<カーソル保持可能性>が指定されてもよい。

88

E131

ナル値提供(値の代わりにナ
ル) 

  “4.13  列,フィールド及び属性”:ナル可能性特性

  “6.5 <文脈型付き値指定>”:<ナル指定>

89

E141

基本整合性制約 

  “11.6 <表制約定義>”

:この表中のこの機能の副機能によって明

記するとおり。

90 E141-01 NOT

NULL 制約

  “11.4 <列定義>”:NOT NULL の<列制約>。

91 E141-02 NOT

NULL 列の UNIQUE 制約 -  “11.4  <列定義>”:NOT NULL として指定された列に対する

UNIQUE の<一意性指定>。

  “11.7 <一意性制約定義>”:UNIQUE の<一意性指定>。

92 E141-03 PRIMARY

KEY 制約

  “11.4  <列定義>”:NOT NULL として指定された列に対する

PRIMARY KEY の<一意性指定>。

  “11.7 <一意性制約定義>”:PRIMARY KEY の<一意性指定>。

93 E141-04 参照削除動作及び参照更新動

作 の 両 方 に 対 し て

NO

ACTION 既 定 値 を も つ 基 本
FOREIGN KEY 制約

  “11.4 <列定義>”:<参照指定>の<列制約>。

  “11.8  <参照制約定義>”:<列名リスト>中に列が指定されるな

らば,それは,適用可能な

<一意性制約定義>の<一意列リスト>

中の名前と同じ順序でなければならず,かつ,一致する列の

<

データ型

>が同じでなければならない。

94 E141-06 CHECK 制約

  “11.4 <列定義>”:<検査制約定義>の<列制約>。

  “11.9 <検査制約定義>”

95 E141-07 列の既定値

  “11.4 <列定義>”:<DEFAULT 句>。

96 E141-08 PRIMARY

KEY から推定され

NOT NULL

  “11.4  <列定義>”及び“11.7  <一意性制約定義>”:全ての

PRIMARY KEY 及び UNIQUE 制約とともに NOT NULL が指定
されるという副機能 E141-02 及び E141-03 での制限を取り除く。

  “11.4 <列定義>”:PRIMARY KEY 制約で NOT NULL が暗に想

定される。

97 E141-10 任意の順序で指定できる外部

キー中の名前

  “11.4  <列定義>”及び“11.8  <参照制約定義>”:<列名リスト>

中で列が指定されるならば,それらの列は,適用可能な

<一意性

制約定義

>の<一意列リスト>中の名前と同じ順序である必要が

ないように,副機能 E141-04 を拡張する。

98

E151

トランザクション提供 

  “17  トランザクション管理”

<COMMIT 文>及び<ROLLBACK

>。


1025

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

99 E151-01 COMMIT 文

  “17.7 <COMMIT 文>”

100 E151-02  ROLLBACK 文

  “17.8 <ROLLBACK 文>”

101

E152

基本 SET TRANSACTION 

  “17.2 <SET TRANSACTION 文>”

102 E152-01  SET TRANSACTION

文 :

ISOLATION LEVEL 
SERIALIZABLE 句

  “ 17.2 <SET TRANSACTION 文 > ”: ISOLATION LEVEL

SERIALIZABLE 句の<トランザクションモード>。

103 E152-02  SET TRANSACTION

文 :

READ ONLY 及 び READ 
WRITE 句

  “17.2 <SET TRANSACTION 文>”:READ ONLY 又は READ

WRITE の<トランザクションアクセスモード>。

104

E153

副問合せのある更新可能な問
合せ 

  “7.13  <問合せ式>”:<WHERE 句>が<副問合せ>を含んでいて

も,

<問合せ式>が更新可能。

105

E161

先行する 重負符号を用いる

SQL 注釈 

  “5.2 <トークン>及び<分離符号>”:<単純注釈>。

106

E171

SQLSTATE 提供 

  “24.1 SQLSTATE”

107

E182

ホスト言語結合 

  “13 SQL クライアントモジュール”

注記 599 SQL 処理系は,モジュール言語,埋込み SQL 又はそれら

の両方のいずれかを用いて,標準ホスト言語との少なく
とも一つの結合を提供する必要がある。これは,次の機
能のいずれかによって提供できる。

機能 B011“埋込み Ada” 
機能 B012“埋込み C” 
機能 B013“埋込み COBOL” 
機能 B014“埋込み Fortran” 
機能 B015“埋込み MUMPS” 
機能 B016“埋込み Pascal” 
機能 B017“埋込み PL/I” 
機能 B111“モジュール言語 Ada” 
機能 B112“モジュール言語 C” 
機能 B113“モジュール言語 COBOL” 
機能 B114“モジュール言語 Fortran” 
機能 B115“モジュール言語 MUMPS” 
機能 B116“モジュール言語 Pascal” 
機能 B117“モジュール言語 PL/I”

108

F031

基本スキーマ操作 

  “11  スキーマ定義及びスキーマ操作”:この機能の副機能によ

って示されるとおりに選択された機能。

109 F031-01  永 続 実 表 を 作 成 す る た め の

CREATE TABLE 文

  “11.3 <表定義>”:<スキーマ定義>の文脈中ではない。

110 F031-02  CREATE

VIEW 文

  “11.32 <ビュー定義>”:<スキーマ定義>の文脈中ではなく,か

つ,機能 F081“ビュー中の UNION 及び EXCEPTION”の提供
なし。

111 F031-03  GRANT 文

  “12.1 <GRANT 文>”:<スキーマ定義>の文脈中ではない。

112 F031-04  ALTER TABLE

文 :

ADD

COLUMN 句

  “11.10 <表変更文>”:<列定義追加>の句。

  “11.11 <列定義追加>”

113 F031-13  DROP

TABLE 文:RESTRICT

  “11.31 <表削除文>”:RESTRICT の<削除動作>。

114 F031-16  DROP

VIEW 文:RESTRICT 句 -  “11.33 <ビュー削除文>”:RESTRICT の<削除動作>。

115 F031-19  REVOKE 文:RESTRICT 句

  “12.7 <REVOKE 文>”:RESTRICT の<削除動作>,この文の利

用が,削除される表の所有者に制限できる場合だけ。


1026

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

116

F041

基本結合表 

  “7.7 <結合表>”:機能 F401F402 及び F403 の提供なしで。

117 F041-01  内結合(必然的に INNER キー

ワードではない)

  “7.6  <表参照>”:副機能 F041-02 から F041-08 までの提供なし

で,

<結合表>の句。

118 F041-02  INNER キーワード

  “7.7 <結合表>”:INNER の<結合型>。

119

F041-03

LEFT OUTER JOIN

  “7.7 <結合表>”:LEFT の<外結合型>。

120

F041-04

RIGHT OUTER JOIN

  “7.7 <結合表>”:RIGHT の<外結合型>。

121 F041-05  入れ子にできる外結合

  “7.7 <結合表>”

<結合表>内の<表参照>自体が<結合表>であっ

てもよいように,副機能 F041-01 を拡張する。

122 F041-07  内結合中でも用いることがで

きる,左外結合又は右外結合
中の内表

  “7.7 <結合表>”

:入れ子になった

<結合表>内の<表名>が,外側

<結合表>中の<表名>と同じであってもよいように,副機能

F041-01 を拡張する。

123 F041-08  (=だけでなく)提供される全

ての比較演算子

  “7.7  <結合表>”:<等号演算子>の<比較演算子>をもつ<比較述

>に,<結合条件>が限定されないように,副機能 F041-01 を拡

張する。

124

F051

基本日付及び時刻 

  “6.1 <データ型>”:日時定数,日時の比較及び日時の変換を含

<日時型>。

125 F051-01  DATE データ型(DATE 定数の

提供を含む。

  “5.3 <定数>”:<日時定数>の形式<日付定数>。

  “6.1 <データ型>”:DATE <日時型>。

  “6.31 <日時値式>”:型 DATE の値に対して。

126 F051-02  少なくとも 0 の小数秒精度を

もつ

TIME データ型(TIME 定

数の提供を含む。

  “5.3  <定数>”:形式<日時定数>の<時刻定数>。ここで,<引用

符なし時刻データ列

>の値は,省略可能な<時刻帯時間隔>を含

まない

<時刻値>を単純に含む。

  “6.1 <データ型>”

<WITH 又は WITHOUT TIME ZONE>の句な

しでの

TIME <日時型>。

  “6.31 <日時値式>”:型 TIME の値に対して。

127 F051-03  少なくとも 0 及び 6 の小数秒

精度をもつ

TIMESTAMP デー

タ型(

TIMESTAMP 定数の提

供を含む。

  “5.3  <定数>”:形式<日時定数>の<時刻印定数>。ここで,<引

用符なし時刻印データ列

>の値は,省略可能な<時刻帯時間隔>

を含まない

<時刻値>を単純に含む。

  “6.1 <データ型>”

<WITH 又は WITHOUT TIME ZONE>の句な

しでの

TIMESTAMP <日時型>。

  “6.31 <日時値式>”:型 TIMESTAMP の値に対して。

128 F051-04  DATE

TIME

TIMESTAMP データ型に関す
る比較述語

  “8.2 <比較述語>”

DATE 型と DATE 型との間,TIME 型と TIME

型との間,

TIMESTAMP 型と TIMESTAMP 型との間の値の比較

に対して。

129 F051-05  日時型と文字列型との間の陽

に指定される

CAST

  “6.13 <CAST 指定>”

:機能 F201“CAST 関数”の提供が得られ

るならば,文字列型から

DATE,TIME 及び TIMESTAMP 型へ

の型変換,

DATE 型から DATE,TIMESTAMP 及び文字列型への

型変換,

TIME 型から TIME,TIMESTAMP 及び文字列型への型

変換,並びに

TIMESTAMP 型から DATE,TIME,TIMESTAMP

及び文字列型への型変換。

130 F051-06  CURRENT_DATE

  “6.32 <日時値関数>”:<CURRENT_DATA 値関数>。

  “6.31 <日時値式>”:値が<CURRENT_DATA 値関数>のとき。

131 F051-07  LOCALTIME

  “6.32 <日時値関数>”:<現在地方時刻値関数>。

  “6.31 <日時値式>”:値が<現在地方時刻値関数>のとき。

  “11.5 <DEFAULT 句>”:<日時値関数>の LOCALTIME 選択肢。


1027

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

132 F051-08  LOCALTIMESTAMP

  “6.32 <日時値関数>”:<現在地方時刻印値関数>。

  “6.31 <日時値式>”:値が<現在地方時刻印値関数>のとき。

  “11.5 <DEFAULT 句>”:<日時値関数>の LOCALTIMESTAMP

選択肢。

133

F081

ビ ュ ー 中 の UNION 及 び

EXCEPT 

  “11.32  <ビュー定義>”:<ビュー定義>中の<問合せ式>が

UNION,UNION ALL 及び/又は EXCEPT を指定してもよい。

134

F131

グループ操作 

  グループビュー (grouped view) は,<副問合せ>に含まれていな

い,陽に指定されるか又は暗に想定される

<GROUP BY 句>又は

<HAVING 句>を含む<問合せ指定>である元の<問合せ式>をも
つビュー。

この定義を用いると,機能 F131“グループ操作”は,それの五つの
副機能 F131-01F131-02F131-03F131-04 及び F131-05 の和集合。

135 F131-01  グループビューをもつ問合せ

中 で 提 供 さ れ る

WHERE ,

GROUP BY 及び HAVING 句

  “7.4  <表式>”:<FROM 句>中の表がグループビューであって

も,

<WHERE 句>,<GROUP BY 句>及び<HAVING 句>を指定し

てもよい。

136 F131-02  グループビューをもつ問合せ

中で提供される複数表

  “7.5 <FROM 句>”

<FROM 句>中の表がグループビューであっ

ても,

<FROM 句>が二つ以上の<表参照>を指定してもよい。

137 F131-03  グループビューをもつ問合せ

中で提供される集合関数

  “7.12  <問合せ指定>”:<FROM 句>中の表がグループビューで

あっても,

<選択リスト>が<集合関数指定>を指定してもよい。

138 F131-04  GROUP

BY 及び HAVING 句並

びにグループビューをもつ副
問合せ

  “7.15  <副問合せ>”:<比較述語>中の<副問合せ>が,<GROUP

BY 句>及び/又は<HAVING 句>を含んでもよく,及び/又は,
グループビューを識別してもよい。

139 F131-05  GROUP

BY 及び HAVING 句並

びにグループビューをもつ単
一行

SELECT

  “14.7 <SELECT 文:単一行>”:<FROM 句>中の表がグループ

ビューであってもよい。

  “14.7 <SELECT 文:単一行>”:<表式>が,<GROUP BY 句>及

び/又は

<HAVING 句>を指定してもよい。

140

F181

複数モジュール提供

注記 600  複数のホスト翻訳
単位を一度に単一の

SQL セシ

ョンに関連付ける能力。

  “13.1 <SQL クライアントモジュール定義>”:SQL エージェン

トを二つ以上の

<SQL クライアントモジュール定義>に関連付け

ることができる。この機能で,複数の

<SQL クライアントモジ

ュール定義

>又は<SQL 埋込みホストプログラム>を別々にコン

パイルし,実行時にそれらを集めて適切に“リンクする”こと

SQL 処理系に頼ることができる。可搬性を確保するためには,

適用業務プログラムは,次の制限に従わなければならない。

  同じ<カーソル名>のカーソルをもつモジュールをリンクするこ

とを避ける。

  同じ<SQL 文名>を用いて文を準備するモジュールをリンクする

ことを避ける。

  同じ<記述子名>の記述子を割り当てるモジュールをリンクする

ことを避ける。

  <埋込み例外宣言>の有効範囲が単一の翻訳単位であることを前

提とする。

  <埋込み変数名>が宣言される同じ翻訳単位中でだけ,それを参

照できることを前提とする。

141

F201

CAST 関数 
注記 601  これは,提供される
全てのデータ型間の関連する
CAST の提供を意味する。

  “6.13 <CAST 指定>”:提供される全てのデータ型に対して。

  “6.26 <値式>”:<CAST 指定>

142

F221

明示既定値 

  “6.5 <文脈型付き値指定>”:<既定値指定>。

注記 602 UPDATE 文及び INSERT 文での利用を含む。


1028

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

143

F261

CASE  

  “6.26 <値式>”:<CASE 式>。

144 F261-01  単純 CASE

  “6.12 <CASE 式>”:<単純 CASE>。

145 F261-02  探索 CASE

  “6.12 <CASE 式>”:<探索 CASE>。

146 F261-03  NULLIF

  “6.12 <CASE 式>”:NULLIF <CASE 略式>。

147 F261-04  COALESCE

  “6.12 <CASE 式>”:COALESCE <CASE 略式>。

148

F311

スキーマ定義文 

  “11.1 <スキーマ定義>”

149 F311-01  CREATE

SCHEMA

  “11.1 <スキーマ定義>”:二つの異なる<表定義>中の<参照制約

定義

>が互いに他の表の列を参照してもよいという循環参照の

提供。

150 F311-02  永 続 実 表 の た め の CREATE

TABLE

  “11.1 <スキーマ定義>”:<表定義>である<スキーマ要素>。

  “11.3 <表定義>”:<スキーマ定義>の文脈中で。

151 F311-03  CREATE

VIEW

  “11.1 <スキーマ定義>”

<ビュー定義>である<スキーマ要素>。

  “11.32  <ビュー定義>”:<スキーマ定義>の文脈中で,WITH

CHECK OPTION 句なしで,かつ,機能 F081“ビュー中の UNION
及び

EXCEPT”の提供なし。

152 F311-04  CREATE

VIEW:WITH CHECK

OPTION

  “11.32 <ビュー定義>”:<スキーマ定義>の文脈中で,しかし,

機能 F081“ビュー中の UNION 及び EXCEPT”の提供なしで,
WITH CHECK OPTION 句。

153 F311-05  GRANT 文

  “11.1 <スキーマ定義>”:<GRANT 文>である<スキーマ要素>。

  “12.1 <GRANT 文>”:<スキーマ定義>の文脈中で。

154

F471

スカラ副問合せ値 

  “6.26  <値式>”:<値式一次子>が<スカラ副問合せ>であっても

よい。

155

F481

拡張 NULL 述語 

  “8.8 <NULL 述語>”

<行値式>が<列参照>以外のものであって

もよい。

156

F812

基本フラグ付け 

  第 1 部の“8.5 SQL フラグ機能”

:中核

SQL フラグ付け (Core SQL

Flagging)  と指定される“フラグ付け水準”,及び構文だけ
(Syntax Only)  と指定される“検査の範囲”。

注記 603  この種類のフラグ付けは,カタログ情報へのアクセスを

必要としないで,構文だけを検査することによって,ベ
ンダ拡張及びその他の規格外の

SQL を識別する。

157

S011

個別データ型 

  “11.51 <利用者定義型定義>”:<表現>が<既定義型>のとき。

  “11.59 <データ型削除文>”

158

T321

基本 SQL 呼出しルーチン 

  “11.60 <SQL 呼出しルーチン>”

  “11.62 <ルーチン削除文>”

    機能 T041“基本 LOB データ型提供”が提供されるならば,<

位置付け子標識

>も提供しなければならない。

注記 604  “ルーチン”は,関数,メソッド及び手続の総称である。

この機能は,規格に適合する

SQL 処理系が利用者定義関

数及び利用者定義手続の両方を提供することを要求す
る。中核

SQL に適合する SQL 処理系は,ルーチンを書く

ための少なくとも一つの言語を提供しなければならな
い。その言語は,

SQL であってもよい。その言語が SQL

ならば,中核

SQL での基本指定能力は,1 文ルーチンを

指定できることである。オーバロードされる関数及び手
続の提供は,中核

SQL の一部分ではない。

159 T321-01  オーバロードなしの利用者定

義関数

  “11.60 <SQL 呼出しルーチン>”:<関数指定>。


1029

X 3005-2:2015 (ISO/IEC 9075-2:2011)

表 38-必須機能の機能分類及び定義(続き)

機能 ID 

機能名 

機能の説明 

160 T321-02  オーバロードなしの利用者定

義格納手続

  “11.60 <SQL 呼出しルーチン>”:<SQL 呼出し手続>。

161 T321-03  関数呼出し

  “6.4  <値指定>及び<相手指定>”:<ルーチン呼出し>である<値

式一次子

>。

  “10.4 <ルーチン呼出し>”:利用者定義関数に対して。

162 T321-04  CALL 文

  “10.4 <ルーチン呼出し>”:<CALL 文>によって用いられる。

  “16.1 <CALL 文>”

163 T321-05  RETURN 文

  “16.2 <RETURN 文>”

SQL 処理系が SQL ルーチンを提供する

ならば。

164

T631

一つのリスト要素をもつ IN 
 

  “8.4 <IN 述語>”:ただ一つの<行値式>を含む<IN 値リスト>。

表 39  “選択機能の機能分類”は,機能の定義を与えない。それらの機能の定義は,適合性規則中に含

まれ,

“附属書 A SQL 適合性の要約”中で更に要約されている。

11

  表 39-選択機能の機能分類

機能 ID 

機能名 

1

B011

1)

埋込み Ada 

2

B012

1)

埋込み 

3

B013

1)

埋込み COBOL 

4

B014

1)

埋込み Fortran 

5

B015

1)

埋込み MUMPS 

6

B016

1)

埋込み Pascal 

7

B017

1)

埋込み PL/I 

8

B021

直接 SQL 

9

B031

基本動的 SQL 

10

B032

拡張動的 SQL 

11 B032-01 <入力 DESCRIBE 文>

12

B033

SQL 呼出し関数の型付きでない引数 

13

B034

カーソル属性の動的指定 

14

B035

非拡張記述子名 

15

B041

埋込み SQL 例外宣言の拡張 

16

B051

拡張実行権 

17

B111

1)

モジュール言語 Ada 

18

B112

1)

モジュール言語 

19

B113

1)

モジュール言語 COBOL 

20

B114

1)

モジュール言語 Fortran 

21

B115

1)

モジュール言語 MUMPS 

22

B116

1)

モジュール言語 Pascal 

23

B117

1)

モジュール言語 PL/I 

24

B121

ルーチン言語 Ada 

25

B122

ルーチン言語 

26

B123

ルーチン言語 COBOL 

27

B124

ルーチン言語 Fortran 

28

B125

ルーチン言語 MUMPS 

29

B126

ルーチン言語 Pascal 


1030

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

30

B127

ルーチン言語 PL/I 

31

B128

ルーチン言語 SQL 

32

B211

モジュール言語 AdaVARCHAR 及び NUMERIC 提供 

33

B221

ルーチン言語 AdaVARCHAR 及び NUMERIC 提供 

34

F032

CASCADE 削除動作 

35

F033

ALTER TABLE 文:DROP COLUMN  

36

F034

拡張 REVOKE  

37 F034-01 スキーマオブジェクトの所有者以外によって実行される REVOKE 文

38 F034-02 REVOKE 文:GRANT OPTION FOR 句

39 F034-03 権限受領者が WITH GRANT OPTION をもつ権限を剝奪するための REVOKE 文

40

F052

時間隔及び日時の算術 

41

F053

OVERLAPS 述語 

42

F054

DATE 型優先順序リスト中の TIMESTAMP 

43

F111

SERIALIZABLE 以外の隔離性水準 

44 F111-01 READ

UNCOMMITTED 隔離性水準

45 F111-02 READ

COMMITTED 隔離性水準

46 F111-03 REPEATABLE

READ 隔離性水準

47

F121

基本診断管理 

48 F121-01 GET

DIAGNOSTICS 文

49 F121-02 SET

TRANSACTION 文:DIAGNOSTICS SIZE 句

50

F122

拡張診断管理 

51

F123

全診断 

52

F171

利用者ごとの複数スキーマ 

53

F191

参照削除動作 

54

F200

TRUNCATE TABLE  

55

F202

TRUNCATE TABLE 文:識別列再開始選択肢 

56

F222

INSERT 文:DEFAULT VALUES  

57

F251

定義域提供 

58

F262

拡張 CASE  

59

F263

単純 CASE 式中のコンマで区切られた述語 

60

F271

複合文字定数 

61

F281

LIKE 強化 

62

F291

UNIQUE 述語 

63

F301

問合せ式中の CORRESPONDING 

64

F302

INTERSECT 表演算子 

65 F302-01 INTERSECT

DISTINCT 表演算子

66 F302-02 INTERSECT

ALL 表演算子

67

F304

EXCEPT ALL 表演算子 

68

F312

MERGE  

69

F313

拡張 MERGE  

70

F314

DELETE 分岐をもつ MERGE  

71

F321

利用者認可 

72

F361

サブプログラム提供 

73

F381

拡張スキーマ操作 

74 F381-01 ALTER

TABLE 文:ALTER COLUMN 句

75 F381-02 ALTER

TABLE 文:ADD CONSTRAINT 句


1031

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

76 F381-03 ALTER

TABLE 文:DROP CONSTRAINT 句

77

F382

列データ型変更 

78

F383

列 NOT NULL 句設定 

79

F384

IDENTITY 特性句削除 

80

F385

列生成式句削除 

81

F386

識別列生成句設定 

82

F391

長い識別子 

83

F392

識別子中の Unicode エスケープ 

84

F393

定数中の Unicode エスケープ 

85

F394

選択可能な正規形式指定 

86

F401

拡張結合表 

87 F401-01 NATURAL JOIN

88

F401-02

FULL OUTER JOIN

89 F401-04 CROSS

JOIN

90

F402

LOB,配列及びマルチ集合に対する名前付き列結合 

91

F403

分割結合表 

92

F411

時刻帯指定 

93

F421

各国文字 

94

F431

読込み専用スクロール可能カーソル 

95 F431-01 陽に指定される NEXT をもつ FETCH

96 F431-02 FETCH

FIRST

97 F431-03 FETCH

LAST

98 F431-04 FETCH

PRIOR

99 F431-05 FETCH

ABSOLUTE

100 F431-06  FETCH

RELATIVE

101

F441

拡張集合関数提供 

102

F442

集合関数中の列参照の混在 

103

F451

文字集合定義 

104

F461

名前付き文字集合 

105

F491

制約管理 

106

F492

選択可能な表制約強制 

107

F521

表明 

108

F531

一時表 

109

F555

拡張秒精度 

110

F561

完全な値式 

111

F571

真理値テスト 

112

F591

導出表 

113

F611

標識データ型 

114

F641

行構成子及び表構成子 

115

F651

カタログ名修飾子 

116

F661

単純表 

117

F671

CHECK 制約中の副問合せ 

118

F672

回顧検査制約 

F673

CHECK 制約中の SQL データを読むルーチン呼出し 

119

F690

照合順提供 

120

F692

拡張照合順提供 


1032

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

121

F693

SQL セション及びクライアントモジュールの照合順 

122

F695

文字変換提供 

123

F701

参照更新動作 

124

F711

ALTER 定義域 

125

F721

遅延可能制約 

126

F731

INSERT 列権限 

127

F741

参照 MATCH  

128

F751

ビューCHECK 拡張 

129

F761

セション管理 

130

F762

CURRENT_CATALOG 

131

F763

CURRENT_SCHEMA 

132

F771

コネクション管理 

133

F781

自己参照操作 

134

F791

鈍感カーソル 

135

F801

完全な集合関数 

136

F813

拡張フラグ付け

  第 1 部の“8.5 SQL フラグ機能”

:中核

SQL フラグ付け  (Core SQL Flagging)  と指定される“フラ

グ付け水準”

,及びカタログ調査

 (Catalog Lookup) と指定される“検査の範囲”。

137

F821

局所表参照 

138

F831

完全カーソル更新 

139 F831-01  更新可能なスクロール可能カーソル

140 F831-02  更新可能な順序付けカーソル

141

F841

LIKE_REGEX 述語 

142

F842

OCCURENCES_REGEX 関数 

143

F843

POSITION_REGEX 関数 

144

F844

SUBSTRING_REGEX 

145

F845

TRANSLATE_REGEX 

146

F846

正規表現演算子でのオクテット提供 

147

F847

値式正規表現 

148

F850

<問合せ式>中の最上位<ORDER BY 

149

F851

副問合せ中の<ORDER BY 

150

F852

ビュー中の最上位<ORDER BY 

151

F855

<問合せ式>中の入れ子になった<ORDER BY 

152

F856

<問合せ式>中の入れ子になった<FETCH FIRST 

153

F857

<問合せ式>中の最上位<FETCH FIRST 

154

F858

副問合せ中の<FETCH FIRST 

155

F859

ビュー中の最上位<FETCH FIRST 

156

F860

<FETCH FIRST >中の動的な<最初の取出し行数

157

F861

<問合せ式>中の最上位<結果 OFFSET 

158

F862

副問合せ中の<結果 OFFSET 

159

F863

<問合せ式>中の入れ子になった<結果 OFFSET 

160

F864

ビュー中の最上位<結果 OFFSET 

161

F865

<結果 OFFSET >中の動的な<変位行数

162

F866

FETCH FIRST 句:PERCENT 選択肢 

163

F867

FETCH FIRST 句:WITH TIES 選択肢 

164

S023

基本構造型 

165

S024

拡張構造型 


1033

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

166

S025

終端構造型 

167

S026

自己参照構造型 

168

S027

特定メソッド名によるメソッド作成 

169

S028

並べ替え可能な UDT 選択肢リスト 

170

S041

基本参照型 

171

S043

拡張参照型 

172

S051

型の表作成 

173

S071

関数及び型の名前解決での SQL パス 

174

S081

下位表 

175

S091

基本配列提供 

176 S091-01  組込みデータ型の配列

177 S091-02  個別型の配列

178 S091-03  配列の式

179

S092

利用者定義型の配列 

180

S094

参照型の配列 

181

S095

問合せによる配列構成子 

182

S096

省略可能な配列限界 

183

S097

配列要素代入 

184

S098

ARRAY_AGG 

185

S111

問合せ式中の ONLY 

186

S151

型述語 

187

S161

下位型扱い 

188

S162

参照に対する下位型扱い 

189

S201

配列に関する SQL 呼出しルーチン 

190 S201-01  配列パラメタ

191 S201-02  関数の結果の型としての配列

192

S202

マルチ集合に関する SQL 呼出しルーチン 

193

S211

利用者定義の型変換関数 

194

S231

構造型位置付け子 

195

S232

配列位置付け子 

196

S233

マルチ集合位置付け子 

197

S241

変換関数 

198

S242

変換変更文 

199

S251

利用者定義順序付け 

200

S261

特定型メソッド 

201

S271

基本マルチ集合提供 

202

S272

利用者定義型のマルチ集合 

203

S274

参照型のマルチ集合 

204

S275

高度マルチ集合提供 

205

S281

入れ子集まり型 

206

S291

行全体の一意性制約 

207

S301

拡張 UNNEST 

208

S401

配列型を基にする個別型 

209

S402

マルチ集合型を基にする個別型 

210

S403

ARRAY_MAX_CARDINALITY 

211

S404

TRIM_ARRAY 


1034

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

212

T021

BINARY 及び VARBINARY データ型 

213

T022

BINARY 及び VARBINARY データ型の高度提供 

214

T023

複合 進オクテット定数 

215

T024

進オクテット定数中の空白 

216

T031

BOOLEAN データ型 

217

T041

基本 LOB データ型提供 

218 T041-01  BLOB データ型

  “5.2 <トークン>及び<分離符号>”:<予約語>の BINARY,BLOB,LARGE 及び OBJECT。

  “5.3 <定数>”:<2 進オクテット列定数>。

  “6.1 <データ型>”:BINARY LARGE OBJECT データ型。

  “6.29 <データ列値式>”:型 BINARY LARGE OBJECT の値に対して。

  “13.5  データ型対応”:提供している全ての言語の BINARY LARGE OBJECT の型対応。

219 T041-02  CLOB データ型

  “5.2 <トークン>及び<分離符号>”:<予約語>の CHARACTER,CLOB,LARGE 及び OBJECT。

  “6.1 <データ型>”:CHARACTER LARGE OBJECT データ型。

  “6.29 <データ列値式>”:型 CHARACTER LARGE OBJECT の値に対して。

  “13.5  データ型対応”:提供している全ての言語の CHARACTER LARGE OBJECT の型対応。

  副機能 E021-10 によって提供される固定長文字列型と可変長文字列型との間の暗黙の型変換が

文字長大オブジェクト型の提供に拡張される。

220 T041-03  LOB データ型に対する POSITION,LENGTH,LOWER,TRIM,UPPER 及び SUBSTRING 関数

  “6.28 <数値関数>”:型 BINARY LARGE OBJECT 及び CHARACTER LARGE OBJECT の式に対

する

<POSITION 式>。

  “6.28 <数値関数>”:型 CHARACTER LARGE OBJECT の式に対する<CHAR_LENGTH 式>。

  “6.28 <数値関数>”:型 BINARY LARGE OBJECT 及び CHARACTER LARGE OBJECT の式に対

する

<OCTET_LENGTH 式>。

  “6.30 <データ列値関数>”

:型

CHARACTER LARGE OBJECT の式に対する<大文字小文字変換>

関数。

  “6.30 <データ列値関数>”:型 CHARACTER LARGE OBJECT の式に対する<TRIM 関数>。

  “6.30 <データ列値関数>”:型 BINARY LARGE OBJECT の式に対する<2 進オクテット TRIM 関

>。

  “6.30 <データ列値関数>”:型 CHARACTER LARGE OBJECT の式に対する<文字部分列関数>。

  “6.30 <データ列値関数>”:型 BINARY LARGE OBJECT の式に対する<2 進オクテット部分列関

>。

221 T041-04  LOB データ型の連結

  “6.29 <データ列値式>”:型 CHARACTER LARGE OBJECT の式に対する<連結>式。

  “6.29 <データ列値式>”:型 BINARY LARGE OBJECT の式に対する<2 進オクテット連結>式。

222 T041-05  LOB 位置付け子:保持可能でない。

  “13.3 <外部呼出し手続>”:<位置付け子標識>。

  “14.17 <FREE LOCATOR 文>”

223

T042

拡張 LOB データ型提供 

224

T043

乗数 

225

T044

乗数 

226

T051

行型 

227

T053

全フィールド参照のための陽に指定された別名 

228

T061

UCS 提供 

229

T071

BIGINT データ型 

230

T101

拡張ナル可能性決定 

231

T111

更新可能な結合,和集合及び列 


1035

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

232

T121

問合せ式中の(RECURSIVE を除く)WITH 

233

T122

副問合せ中の(RECURSIVE を除く)WITH 

234

T131

再帰的問合せ 

235

T132

副問合せ中の再帰的問合せ 

236

T141

SIMILAR 述語 

237

T151

DISTINCT 述語 

238

T152

否定付き DISTINCT 述語 

239

T171

表定義中の LIKE  

240

T172

表定義中の AS 副問合せ句 

241

T173

表定義中の拡張 LIKE  

242

T174

識別列 

243

T175

生成列 

244

T176

順序数生成子提供 

245

T177

順序数生成子提供:単純再開始選択肢 

246

T178

識別列:単純再開始選択肢 

247

T180

システムバージョン表 

248

T181

適用業務時刻期間表 

249

T191

参照動作 RESTRICT 

250

T201

参照制約のための比較可能なデータ型 

251

T211

基本トリガ能力 

252 T211-01  一つの実表の UPDATE,INSERT 又は DELETE に関して活性化されるトリガ

253 T211-02  BEFORE トリガ

254 T211-03  AFTER トリガ

255

T211-04

FOR EACH ROW トリガ

256 T211-05  トリガが呼び出される前に

  (True)  でなければならない探索条件を指定するための能力

257 T211-06  トリガ及び制約の相互作用に対する実行時規則の提供

258 T211-07  TRIGGER 権限

259 T211-08  カタログ中に作成された順序で実行される同じ事象に対する複数のトリガ

260

T212

拡張トリガ能力 

261

T213

INSTEAD OF トリガ 

262

T231

敏感カーソル 

263

T241

START TRANSACTION  

264

T251

SET TRANSACTION 文:LOCAL 選択肢 

265

T261

連鎖トランザクション 

266

T271

保存点 

267

T272

拡張保存点管理 

268

T281

列単位の SELECT 権限 

269

T285

拡張導出列名 

270

T301

関数従属性 

271

T312

OVERLAY 関数 

272

T323

外部ルーチンのための陽に指定される安全保護 

273

T324

SQL ルーチンのための陽に指定される安全保護 

274

T325

修飾付き SQL パラメタ参照 

275

T326

表関数 

276

T331

基本役割 

277

T332

拡張役割 


1036

X 3005-2:2015 (ISO/IEC 9075-2:2011)

11

  表 39-選択機能の機能分類(続き)

機能 ID 

機能名 

278

T341

SQL 呼出し関数及び SQL 呼出し手続のオーバロード 

279

T351

囲み注釈 

280

T431

拡張グループ化能力 

281

T432

入れ子及び連結 GROUPING SETS 

282

T433

複数引数 GROUPING 関数 

283

T434

GROUP BY DISTINCT 

284

T441

ABS 及び MOD 関数 

285

T461

対称的 BETWEEN 述語 

286

T471

結果集合戻り値 

287

T472

DESCRIBE CURSOR 

288

T491

LATERAL 導出表 

289

T495

データ変更及び取出しの一体化 

290

T501

拡張 EXISTS 述語 

291

T502

期間述語 

292

T511

トランザクション数 

293

T521

CALL 文中の名前付き引数 

294

T522

SQL 呼出し手続の入力パラメタのための既定値 

295

T551

既定構文のための省略可能なキーワード 

296

T561

保持可能位置付け子 

297

T571

配列戻し外部 SQL 呼出し関数 

298

T572

マルチ集合戻し外部 SQL 呼出し関数 

299

T581

正規表現部分列関数 

300

T591

潜在的にナルの列の UNIQUE 制約 

301

T601

局所カーソル参照 

302

T611

基本 OLAP 演算 

303

T612

高度 OLAP 演算 

304

T613

サンプリング 

305

T614

NTILE 関数 

306

T615

LEAD 及び LAG 関数 

307

T616

LEAD 及び LAG 関数のナルの扱いの選択肢 

308

T617

FIRST_VALUE 及び LAST_VALUE 関数 

309

T618

NTH_VALUE 関数 

310

T619

入れ子ウィンドウ関数 

311

T620

WINDOW 句:GROUPS 選択肢 

312

T621

拡張数関数 

313

T641

複数列代入 

314

T651

SQL ルーチン中の SQL スキーマ文 

315

T652

SQL ルーチン中の動的 SQL  

316

T653

外部ルーチン中の SQL スキーマ文 

317

T654

外部ルーチン中の動的 SQL  

318

T655

循環的依存ルーチン 

1)

  規格に適合する SQL 処理系は,少なくとも一つの埋込み言語を提供するか,又は少なくとも一つのホスト言語

に対して結合する

SQL クライアントモジュールを提供することが(JIS X 3005-1 [ISO9075-1]  の“8  適合性”に

よって,

)要求されている。


1037

X 3005-2:2015 (ISO/IEC 9075-2:2011)

附属書 G 
(参考)

JIS X 3005 (ISO/IEC 9075)  規格群のこの版で取り込まれていない欠陥報告

この附属書中の各項目は,この規格の前の版で報告され,この版で残ったままになっている欠陥を記述

する。

なし。 


1038

X 3005-2:2015 (ISO/IEC 9075-2:2011)

参考文献

[1]  [IANA]

The Internet Assigned Numbers Authority, Character sets

http://www.iana.org/assignments/character-sets

[2]  [ISO646]

ISO/IEC 646,Information technology-ISO 7-bit coded character set for information interchange

[3]  [ISO6429]

JIS X 0211  符号化文字集合用制御機能

注記

  対応国際規格:ISO/IEC 6429,Information technology-Control functions for coded character

sets

注記

  JIS X 0211:1994 は,ISO/IEC 6429:1992 と一致(IDT)している。

[4]  [ISO9075-3]

ISO/IEC  9075-3:2008,Information technology-Database languages-SQL-Part 3: Call-Level Interface

(SQL/CLI)

注記

  JIS  X  3005-3:2002  データベース言語 SQL  第 3 部:呼出しレベルインタフェース

(SQL/CLI)  が,この国際規格の二つ前の版 ISO/IEC 9075-3:1999 と一致している。

[5]  [ISO9075-4]

ISO/IEC  9075-4:2011,Information technology-Database languages-SQL-Part 4: Persistent Stored

Modules (SQL/PSM)

注記

  JIS X 3005-4:2002  データベース言語 SQL  第 4 部:永続格納モジュール (SQL/PSM) が,

この国際規格の三つ前の版 ISO/IEC 9075-4:1999 と一致している。

[6]  [ISO9075-9]

ISO/IEC  9075-9:2008,Information technology-Database languages-SQL-Part 9: Management of

External Data (SQL/MED)

注記

  JIS X 3005-9:2003  データベース言語 SQL  第 9 部:外部データ管理 (SQL/MED) が,こ

の国際規格の二つ前の版 ISO/IEC 9075-9:2001 と一致している。

[7]  [ISO9075-10]

ISO/IEC  9075-10:2008,Information technology-Database languages-SQL-Part 10: Object Language

Bindings (SQL/OLB)

注記

  JIS X 3005-10:2003  データベース言語 SQL  第 10 部:オブジェクト言語結合 (SQL/OLB)

が,この国際規格の二つ前の版 ISO/IEC 9075-10:2000 と一致している。

[8]  [ISO9075-13]

ISO/IEC 9075-13:2008,Information technology-Database languages-SQL-Part 13: SQL Routines and

Types Using the Java™ Programming Language (SQL/JRT)

注記

  JIS X 3005-13:2007  データベース言語 SQL  第 13 部:Java プログラム言語を用いる SQL

ルーチン及び型

 (SQL/JRT) が,この国際規格の前の版 ISO/IEC 9075-13:2003 と一致してい

る。

[9]  [ISO9075-14]


1039

X 3005-2:2015 (ISO/IEC 9075-2:2011)

ISO/IEC  9075-14:2011,Information technology-Database languages-SQL-Part 14: XML-Related

Specifications(SQL/XML)

注記

  JIS X 3005-14:2006  データベース言語 SQL  第 14 部:XML 関連仕様 (SQL/XML) が,こ

の国際規格の三つ前の版 ISO/IEC 9075-14:2003 と一致している。

[10] [POSIX]

ISO/IEC/IEEE  9945,Information technology-Portable Operating System Interface (POSIX®) Base

Specifications, Issue 7