Print Friendly, PDF & Email

ER図の詳細な解説は別のテキストに譲り、ここではMySQL Workbenchのデータ・モデリング機能に絞った解説を行います。

1.ER図からテーブルを作成する

ER図からテーブルを生成する手順は以下のとおりです。

1.MySQL Workbenchを起動した画面の左側から以下のアイコンをクリックします。

モデリング

2.新しいスキーマ(以下の図ではmydb)が作成されます。名前を変えたりすることも可能です。

新しいER図を作成するには「Add Diagram」をクリックします。

3.主なアイコンのメニューを解説します。

モデリングのメニュー

①のオブジェクトの選択はテーブル間でリレーションシップを貼るときなどに使用します。

②でテーブルを作成できます。

4.テーブルをダブルクリックするとテーブル名を変更したりアトリビュートを追加できます。

モデリングでテーブル名を変更したりアトリビュートを追加できる

5.作成したER図からテーブルを生成するには以下の手順を踏みます。

シンクロナイズモデル

メニューの「Database」から「Synchronize Model」を選択します。

モデリング5

どのDBMSに作成するかを選択できます。新人研修ではこれ以降も全てデフォルトのまま「Next」で結構です。

モデリング7

途中でどのようなSQLが生成されるかが表示されます。必要に応じてコピーもできます。

「Execute>」ボタンを押すことで選択したDBMSに新しいスキーマが作成されます。

2.ER図の主な構成要素

 

①エンティティはデータのまとまりでテーブルのことです。

②アトリビュートは属性と訳され、テーブルの列名のことです。

③リレーションはエンティティ間の関係性のことです。

④カーディナリティは多重度のことです。

以下にもう少し細かく解説します。

3.アトリビュートの記号

ER図のアトリビュート

①鍵のマークは主キーを表します。

②ピンクのひし形は外部キーを表します。上記の例ではcountry表のCodeがcity表にCountryCodeという名前の外部キーとなっています。

③水色のひし形は主キーや外部キー以外のアトリビュートで非NULL制約があることを表します。例えば、独立年や平均寿命は不明の国があります。

④白抜きの水色のひし形は主キーや外部キー以外のアトリビュートで非NULL制約がないことを表します。例えば、国名や面積、人口の不明な国はありません。

4.リレーションの記号

リレーションの図

①非依存関係とは、点線で表され、一方が存在しなくても他方が存在できる関係のことです。例えば、上記の例ではcoutryエンティティが存在しなくてもcityエンティティは存在できます。またその逆も言えます。

②依存関係とは、実線で表され、一方が存在しないと他方が存在できない関係のことです。例えば、上記の例ではcoutryエンティティが存在しないとcountrylanguage(母国語)エンティティは存在できません。

5.カーディナリティの記号

カーディナリティ

①エンティティを2つ選ぶことで1:1の関係を作ります。

②1:多のバージョンです。多にするエンティティを先に選ぶことに注意しましょう。(以下同じ)

③依存版の1:1関係です。

④同じく1:多の関係です。

⑤多:多の関係です。間に中間エンティティが作られます。

⑥既存のアトリビュートを使い1:多の関係を作ります。

なお、1:多の関係を設定する際にはエンティティの選択順序が決まっています。

カーディナリティの選択順序

「多」を先に選ぶ、と覚えて下さい。

以上、新人研修では上記のことを理解しておけば大丈夫です。

MySQL Workbench の使い方へ戻る