参考: SQL99概要 アドバンストSQL編 DB2 UDB(PC & Unix)デザイン・ガイド
by user
Comments
Transcript
参考: SQL99概要 アドバンストSQL編 DB2 UDB(PC & Unix)デザイン・ガイド
DB2 UDB(PC & Unix)デザイン・ガイド 別冊 アドバンストSQL編 参考 アドバンストSQL編 参考: SQL99概要 (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 ブランク・ページです 参考 ( 1-2 ) DB2 UDB(PC & Unix)デザイン・ガイド 別冊 アドバンストSQL編 参考 SQL99 概要 データベース言語に関する現在最新の国際標準 SQL92の発行以前から開発が始まった 1999年11月、国際標準化が正式決定、12月に出版 フレームワーク、 ファウンデーション、PSM、CLI、言語バインディングのパート 世界各国のベンダーが、標準化活動に参加、貢献 SQL92のスーパーセット V PL S E G R S S T VL R A O OR E O R D EM P SQL99の機能強化のねらい リレーショナル・データベースの表現能力をより一層高める オブジェクト指向の考え方を取り入れたオブジェクト・リレーショナル技術を具体化する インターネットやJavaの普及に対応したクライアント・サーバー機能を強化する SQL/MM(Multi Media)に代表されるSQL99を基盤としたアプリケーション・パッケージの開発を 促進する (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 解説: SQL99 概要 SQL言語の国際標準としてはこれまではSQL92が正式なものでしたが、その制定から約7年の歳月をかけてSQL言語の国際標 準が大幅に改定され、2000年を間近にした昨年11月、それまでのコード名のSQL3を改め、SQL99として正式に制定されました。 SQL99は、SQL92を基盤としたさらなる機能拡張を目指し、米国や日本などのデータベース製品を開発・販売している主要国が中 心となって標準化活動が進められました。当時すでにオブジェクト指向がプログラミング言語の分野で大きな成功を収めていたっ ことと、リレーショナル・データベースを批判する立場のオブジェクト指向データベースの研究が盛んであったことが背景になって、 リレーショナルの機能の拡張だけでなく、オブジェクト指向の考え方をSQLに採り入れる努力と検討が重ねられたのです。 (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 39 参考 ( 3-4 ) DB2 UDB(PC & Unix)デザイン・ガイド 別冊 アドバンストSQL編 参考 SQL99 概要.. SQL99は複数のパートで構成される SQL/Framework (Part 1) SQL99の概要、コンセプトや標準化文書の構成や準拠について規定する SQL/Foundation (Part 2) SQLの基本機能を規定する 型、スキーマ、表、視点、照会・更新ステートメント、式、セキュリティモデル、述語、代入規則、トランザクション管理など SQL/CLI (Call Level Interface) (Part 3) 既存のCLI規格をSQL99に対応させる SQL/PSM (Persistent Stored Modules) (Part 4) 手続き型SQLへの拡張 既存の規格をSQL99に対応させる SQL/Bindings (Part 5) プログラミング言語に埋め込むSQL文を規定する 動的、静的 バインディングを含む SQL/MED (Management of External Data) (Part 9) 外部データ管理 非リレーショナルデータ(順次ファイルや階層型データベースなど)や他社のリレーショナルデータをSQLでアクセスす るための規格 SQL/OLB (Object Language Binding) (Part 10) SQLJを標準化する Javaプログラムに埋め込むSQL文を規定する (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 解説: SQL99 概要.. SQL99は上記7つのパートで構成されています。 各パートは別々に標準化の作業が行なわれているため、その進捗によって制定時期がずれる可能性があります。 1999年12月、国際標準として制定されたのはフレームワーク、ファウンデーション、CLI、PSM、バインディングの5パートです。 またこれらとは、別のグループになりますがSQL/MM(MultiMedia)の「空間データ」のパート規格も同時に制定されました。 国際標準SQLの歩み 国際規格 制定年度 国際標準規格 ページ数 1987年 SQL86 DML文 COBOL,FORTRAN,PL/Iなどの親言語への埋込みSQL文 1989年 SQL89 スキーマ定義言語を追加(CREATE TABLE文、CREATE VIEW文、GRANT文。ただ し、DROP文、ALTER文、REVOKE文はなし) 整合性機能を追加(DEFAULT、UNIQUE、NOT NULL,PRIMARY KEY、CHECK 句,参照の整合性) C言語への埋込みSQL文 SQL92 直交性の改善(表式) データ型の拡張(可変長、ビット、文字集合、日付・時刻・時間間隔) 外結合(アウタージョイン) 定義域(ドメイン) 表明(アサーション) 一時表 スキーマ操作言 語の追加(DROP文、ALTER文) 動的SQL スクロール可能カーソル SQL/CLI(コールレベルインタフェース) SQL/CLI 業界標準ODBCインタフェースに相当する機能を国際標準化した規格 120 1996年 SQL/PSM(永続格納モジュール) SQL/PSM 一般にストアドプロシージャと呼ばれる機能を国際標準化した規格 250 1999年~ 2000年 SQL99 1700ページ以上 1992年 1995年 (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 参考 ( 5-6 ) 622 200 DB2 UDB(PC & Unix)デザイン・ガイド 別冊 アドバンストSQL編 参考 SQL99 概要.. SQL/Foundationに含まれる主な機能 リレーショナルモデルの機能強化 新しいデータ型 (Boolean,LOB) 更新機能の拡張 - UNION,JOIN経由の更新 その他リレーショナル拡張 for all, for some, similar to, sensitive coursor,hold cursor トリガー 権限の拡張 (roll) 再起SQL SAVEPOINT OLAP拡張 CUBE,ROLLUP,ORDER BY,GROUPING ... オブジェクト・リレーショナル拡張 ユーザー定義型(DISTINCT型、構造型) 集合(コレクション)型としての配列型、行型、 参照型 ユーザー定義関数 ユーザー定義プロシージャ ユーザー定義メソッド サブテーブル ... (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 解説: SQL99 概要.. SQL99はSQL92のスーパーセットであり、完全上位互換性 を保っています。 SQLファウンデーションに含まれる機能拡張は、リレーショナル・モデルの機能強化とオブジェクト・リレーショナル拡張に大別でき ます DB2 UDB では DB2 CommonServer V2のころから、これらの機能を積極的に取り入れ、機能拡張を行ってきています。 特に DB2 UDB V6では、オブジェクト・リレーショナル拡張に関連する多くの機能が追加され、V7でそれを拡張しています。 (C)日本IBMシステムズ・エンジニアリング(株) データシステム部 39 参考 ( 7-8 )