ヘッダーをスキップ
Oracle Rdb SQLリファレンス・マニュアル
リリース7.2
E06178-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

付録B
SQL規格

この付録では、Oracle Rdbで準拠しているSQL規格について説明します。

B.1 ANSI/ISO/IEC SQL 1999規格

さらに、Oracle RdbはANSI/ISO/IEC 9075-4:1999(Persistent Stored Modules)規格のほとんどに準拠しています。

SQL:1999 Coreの次の機能は現在Oracle Rdbでは使用できません。

ANSI規格のコピーは、次の宛先に申し込んでください。

American National Standards Institute
11 West 42nd Street
New York, NY 10036
USA
電話番号: 212.642.4900
FAX番号: 212.398.0023

Webサイトからも入手できます。URLは、次のとおりです。

http://webstore.ansi.org/ansidocstore/default.asp

SQL規格を含むANSI規格のサブセットは、X3またはNCITS規格です。これらは、次のURLのNational Committee for Information Technology Standards(NCITS)から入手できます。

http://www.cssinfo.com/ncitsquate.html

Oracle Rdbが完全にサポートしているCore SQL:1999機能を、表B-1に示します。

表B-1 完全にサポートしているCore SQL:1999機能
機能識別番号 機能
E011 数値データ型
E021 文字データ型
E031 識別子
E051 基本問合せ仕様
E061 基本条件および検索条件
E071 基本問合せ式
E081 基本権限
E091 集合ファンクション
E101 基本データ操作
E111 単一行のSELECT文
E121 基本カーソル・サポート
E131 NULL値のサポート(値のかわりのNULL)
E141 基本整合性制約
E151 基本トランザクション・サポート
E152 基本SET TRANSACTION文
E153 副問合せを持つ更新可能な問合せ
E161 先頭に2つの負の符号を付けたSQL文のコメント
E171 SQLSTATEのサポート
E182 モジュール言語
F041 基本結合表
F081 ビューのUNIONおよびEXCEPT
F131 グループ操作
F181 複数モジュールのサポート
F201 CASTファンクション
F221 明示的なデフォルト
F261 CASE式
F311 スキーマ定義文
F471 スカラー副問合せの値
F481 拡張NULL条件

Oracle Rdbが部分的にサポートしているCore SQL:1999機能を、表B-2に示します。

表B-2 部分的にサポートしているCore SQL:1999機能
機能識別番号 機能 部分的なサポート
F031 基本スキーマ Oracle Rdbでは次の操作の副機能を完全にサポートしている。

  • F031-01、11節「スキーマ定義および操作」: この機能の副機能に示した選択された機能

  • F031-02、CREATE VIEW文

  • F031-03、GRANT文

  • F031-04、ALTER TABLE文: ADD COLUMN句

  • F031-13、DROP TABLE文: RESTRICT句

  • F031-16、DROP VIEW文: RESTRICT句

Oracle Rdbでは次の副機能はサポートしていない。

  • F031-19、REVOKE文: RESTRICT句

F051 基本日付および時刻 Oracle Rdbでは次の副機能を完全にサポートしている。

  • F051-01、DATEデータ型(DATEリテラルのサポートを含む)

  • F051-02、最小限0の小数秒精度のTIMEデータ型(TIMEリテラルのサポートを含む)

  • F051-03、最大2の小数秒精度のTIMESTAMPデータ型(TIMESTAMPリテラルのサポートを含む)

  • F051-04、DATEデータ型、TIMEデータ型およびTIMESTAMPデータ型の比較条件

  • F051-05、日時データ型とキャラクタ・タイプ間の明示的なCAST

  • F051-06、CURRENT_DATE

  • F051-07、LOCALTIME

  • F051-08、LOCALTIMESTAMP

Oracle Rdbでは次の副機能はサポートしていない。

  • F051-03、2を超える小数秒精度

T321 基本SQL起動ルーチン Oracle Rdbでは次の副機能を完全にサポートしている。

  • T321-01、オーバーロードしないユーザー定義ファンクション

  • T321-02、オーバーロードしないユーザー定義ストアド・プロシージャ

  • T321-03、ファンクションの起動

  • T321-04、CALL文

  • T321-05、RETURN文

Oracle Rdbでは次の副機能はサポートしていない。

  • T321-06、ROUTINESビュー

  • T321-07、PARAMETERSビュー

Oracle RdbがサポートしていないCore SQL:1999機能を、表B-3に示します。

表B-3 サポートしていないCore SQL:1999機能
機能識別番号 機能
F021 基本情報スキーマ: この情報はOracle Rdbシステム表から入手可能
F501 機能および準拠するビュー
F812 基本フラグ付け: Oracle RdbのSQLフラガーはSQL92を介してのみ表示
S011 Distinctデータ型

B.2 RdbのSQL:1999機能

Oracle Rdbリリース7.1では、SQLに次のSQL:1999機能を追加しています。

B.3 SQL:1999セマンティクスの確立

次のコマンドは、SQL:1999データベース言語規格セマンティクスの確立に使用できます。

次に例を示します。


SQL> SET DIALECT 'SQL99';

通常、SQL99言語のセマンティクスはSQL92と同じです。新機能が追加されたため、この2つの言語はセマンティクスが異なる場合があります。

次のコマンドは、この接続の現在の設定を示します。


SQL> SHOW CONNECTION <connectionname>

次に例を示します。


SQL> show connection rdb$default_connection
Connection: RDB$DEFAULT_CONNECTION
Default alias is RDB$DBHANDLE
Default catalog name is RDB$CATALOG
Default schema name is SMITHI
Dialect: SQL99
Default character unit: CHARACTERS
Keyword Rules: SQL99
View Rules: ANSI/ISO
Default DATE type: DATE ANSI
Quoting Rules: ANSI/ISO
Optimization Level: DEFAULT
Hold Cursors default: WITH HOLD PRESERVE NONE
Quiet commit mode: ON
Compound transactions mode: EXTERNAL
Default character set is DEC_MCS
National character set is DEC_MCS
Identifier character set is DEC_MCS
Literal character set is DEC_MCS
Display character set is UNSPECIFIED

セッション変数DIALECT、DATE_FORMAT、QUOTING_RULESおよびKEYWORD_RULESも文字列SQL99を返すことができます。

次に例を示します。


SQL> declare :a, :b, :c, :d char(10);
SQL> get environment (session)
cont>     :a = DIALECT,
cont>     :b = DATE_FORMAT,
cont>     :c = QUOTING_RULES,
cont>     :d = KEYWORD_RULES;
SQL> print :a, :b, :c, :d;
 A            B            C            D
 SQL99        SQL99        SQL99        SQL99