連載 [第3回] :
即活用!ツールを活用したデータモデリング日本語名の是非とデータ型採用方針
2006年3月22日(水)
物理モデルをシングルバイト、論理モデルをダブルバイトに
テーブル名やカラム名をシングルバイトで定義するとしましょう。テーブルの列を定義する「テーブル定義書」を作成する場合、英語(またはローマ字)だけだと意味がわかりにくいので、カラム名の横に日本語名も併記します。アプリケーションを作成する際は、この日本語名を参照しながら実カラム名の意味を理解して作業を進めることになります。データモデリングツールを使った場合、物理モデルと論理モデルを使い分けて英語名・日本語名の両表記をサポートします。
では、具体例で説明しましょう。ちょっと趣向を凝らして、SQL Serverに付随されているサンプルデータベース「Northwind」をOracleに移植することにします。図1はNorthwindデータベースからリバースしてER図を作成し、それをOracle用に変換してOracleデータベースにフォワード生成するという例題の流れです。
図2は、リバース生成したER図の物理モデル表示で、テーブル名やカラム名がシングルバイト表示になっています。データモデリングツールは、物理モデルをこの状態のままで論理モデルに日本語名を付けることができます。
図3は日本語名を付けた論理モデル表示で、データベース設計は通常この論理モデル表示で作業を行います。
図2や図3においてエンティティ「社員」をダブルクリックすると、図4のようなエンティティ定義画面が開きます。この画面を見ると、テーブル名やカラム名などの物理モデル情報とエンティティ名や属性名(アトリビュート)という論理モデル情報を一緒に定義・管理していることが確認できます。
例えば1行目の属性、「社員番号」は論理モデル上の情報で、ダブルバイトで定義しました。一方、カラム名「EmployeeID」は物理モデル上の情報でシングルバイトです。このER図をOracleに接続してフォワード処理を行えば、物理モデル情報(シングルバイト)に基づいてテーブルオブジェクトが作成されます。このようにして、SQL Serverの有名なNorthwindデータベースをOracle上に移植することもできるのです。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。