矢沢久雄

●データベース管理システムの構成と機能

 データベースを構築,運用するためのソフトウエアのセットのことを,データベース管理システム(DBMS:DataBase Management System)と呼びます。マイクロソフトのAccess,Microsoft SQL Server,およびオラクルのOracleなどは,市販のデータベース管理システムです。データベースという言葉が,データベース管理システムを表す場合もあります。

 データベース管理システムは,データベースの実体となるデータ・ファイル,データベースを読み書きするためのプログラムであるデータベース・エンジン,およびさまざまなデータベース管理ツール(アプリケーション)から構成されています。たとえばAccessは,MDBファイル(データ・ファイル),Jet(データベース・エンジン),およびAccess本体(データベース管理ツール)で構成されています(図1)

図1●データベース管理システムの構成(Access)

一般的なデータベース管理システムは,利用者に対して次の機能を提供します。

データベースを定義する機能
データベースを操作する機能
データベースを保護する機能

では,ぞれぞの機能を説明しましょう。

図2●3層スキーマ

●データベースを定義する機能

 データベースの構造やデータの格納形式のことを「スキーマ」と呼びます。スキーマには,ANSI(アメリカ規格協会)で標準化されたANSI/X3/SPARCの「3層スキーマ(図2)」と呼ばれるものがあります。これは,データベースのスキーマを内部スキーマ(物理的な部分),概念スキーマ(論理的な部分),および外部スキーマ(利用者から見える部分)の3つの階層に分けて示すものです。3層スキーマに準拠していれば,異なるデータベース管理システムであっても,相互にデータベースを利用できます。

 データベースを定義するということは,すなわちスキーマを定義することです。スキーマを定義する機能は,データベース管理システムが提供します。データベース管理システムが提供するデータベース言語を使って,データベースの利用者がスキーマを定義をします。データベース言語としては,SQLがよく使われます。

●データベースを操作する機能

 データベースの操作とは,データを登録(Create),読み出し(Read),更新(Update),削除(Delete)することです。これらの頭文字を組み合わせてCRAD(クラッド)と呼びます。データベースの操作も,データベース管理システムが提供するデータベース言語を使います。利用者のプログラムが,データベース管理システムが提供するデータベース・エンジンに,データベース言語で記述された命令(クエリー)を送ることで,データベースを操作できます(図3)

図3●データベースの操作はクエリーを使う

 次回は,データベースを保護する機能について解説します。