TOP設計・移行・活用> 物理モデルをシングルバイト、論理モデルをダブルバイトに
実践!モデリングツール
即活用!ツールを活用したデータモデリング

第3回:日本語名の是非とデータ型採用方針
著者:システムインテグレータ  梅田 弘之   2006/3/22
前のページ  1  2   3  4  次のページ
物理モデルをシングルバイト、論理モデルをダブルバイトに

   テーブル名やカラム名をシングルバイトで定義するとしましょう。テーブルの列を定義する「テーブル定義書」を作成する場合、英語(またはローマ字)だけだと意味がわかりにくいので、カラム名の横に日本語名も併記します。アプリケーションを作成する際は、この日本語名を参照しながら実カラム名の意味を理解して作業を進めることになります。データモデリングツールを使った場合、物理モデルと論理モデルを使い分けて英語名・日本語名の両表記をサポートします。

   では、具体例で説明しましょう。ちょっと趣向を凝らして、SQL Serverに付随されているサンプルデータベース「Northwind」をOracleに移植することにします。図1はNorthwindデータベースからリバースしてER図を作成し、それをOracle用に変換してOracleデータベースにフォワード生成するという例題の流れです。

Northwindデータベースの物理モデルと論理モデル
図1:Northwindデータベースの物理モデルと論理モデル

   図2は、リバース生成したER図の物理モデル表示で、テーブル名やカラム名がシングルバイト表示になっています。データモデリングツールは、物理モデルをこの状態のままで論理モデルに日本語名を付けることができます。

物理モデル表示でシングルバイト
図2:物理モデル表示でシングルバイトを利用した場合

   図3は日本語名を付けた論理モデル表示で、データベース設計は通常この論理モデル表示で作業を行います。

論理モデル表示でダブルバイト
図3:論理モデル表示でダブルバイトを利用した場合

   図2や図3においてエンティティ「社員」をダブルクリックすると、図4のようなエンティティ定義画面が開きます。この画面を見ると、テーブル名やカラム名などの物理モデル情報とエンティティ名や属性名(アトリビュート)という論理モデル情報を一緒に定義・管理していることが確認できます。

エンティティ定義でシングルバイトとダブルバイトを混在
図4:エンティティ定義でシングルバイトとダブルバイトを混在させた場合
(画像をクリックすると別ウィンドウに拡大図を表示します)

   例えば1行目の属性、「社員番号」は論理モデル上の情報で、ダブルバイトで定義しました。一方、カラム名「EmployeeID」は物理モデル上の情報でシングルバイトです。このER図をOracleに接続してフォワード処理を行えば、物理モデル情報(シングルバイト)に基づいてテーブルオブジェクトが作成されます。このようにして、SQL Serverの有名なNorthwindデータベースをOracle上に移植することもできるのです。

前のページ  1  2   3  4  次のページ


システムインテグレータ  梅田 弘之
著者プロフィール
株式会社システムインテグレータ  梅田 弘之
東芝、住商情報システムを経て1995年にシステムインテグレータ社を設立。 常駐・派遣主体の労働集約的な日本のソフトウェア業の中で、創造性にこだわってパッケージビジネスを行っている。 国際競争力のない日本のIT産業が、ここから巻き返しを図るための切り札は「プロジェクト管理」だと信じ、実践的なプロジェクト管理手法「PYRAMID」を自社開発している。


INDEX
第3回:日本語名の是非とデータ型採用方針
  データベースのテーブル設計
物理モデルをシングルバイト、論理モデルをダブルバイトに
  論理モデル情報をRDBMSコメント欄に保存
  使用するデータ型を統一する