2017-04-21 19 views
0

下記の大学データベースのリレーショナルモデルを設計しました。 今このデータベースのER図を作成するように求められます。リレーショナルスキーマからER図を生成できるツールがあることを知りたいだけです。リレーショナルモデルからER図を作成する手順は何ですか? enter image description hereER図へのリレーショナルスキーマ

答えて

0

私は、リレーショナルモデルから適切なER図を生成できるツールについては知らない。このようなツールの1つの難点は、すべてのリレーショナル・モデルをERモデルとして解釈できるわけではないことです。リレーショナル・モデルは、(一次論理に相当するので)事実の有限集合を表現することができるが、エンティティ・リレーションシップ・モデルはより限定されている。 ER図の中にリレーショナルモデルを変換するには

、私は、次の手順をお勧めしたい:

  1. ERモデルの優れた理解が貴重になります。陳の論文The Entity-Relationship Model - Toward a Unified View of Dataを調べてください。

  2. 各列について、エンティティセットまたは値セットを表すかどうかを判断します。エンティティ・キーは通常、ある表の主キーと他の表の外部キーです。値セットは一般にラベルと測定値を表し、従属列にあります。例えば

    • namepasswordが値セットを表しながら、teacherに、T_IDdept_nameは、エンティティのキ​​ーです。
  3. 関係を特定します。リレーションシップは、同じテーブル内の2つ以上のエンティティキーで表され、少なくとも1つは主キーの一部です。例えば

    • teacherに、一対(T_ID, dept_name)は、エンティティセットの関係はT_IDによって及びdept_nameを同定表します。それらのエンティティセットをteacherdepartmentと呼ぶことができますが、それらを同じ名前のテーブルと混同しないでください。別の例はadvisor (T_ID, S_ID)です。
  4. 属性を識別する。属性は、エンティティセットまたは関係から値セットへのマッピングです。表の主キーは、従属列(値セット)が関連付けられ、属性を形成するエンティティまたは関係セット(アトミックまたは複合PK)を決定します。例えば

    • teacherに、T_ID -> nameは属性であり、T_ID -> passwordは別です。
  5. 図を作成します。各エンティティセットを長方形で表し、それぞれの関係をダイヤモンドで表します。関係エンティティセットとの関係を接続します。決定エンティティまたは関係セットに添付された楕円としてキーと属性を描画します。リレーションシップのキーは描画しません。関連するエンティティセットのキーによって決定されます。

これは単なる基本的な出発点である - 私たちは弱いキー、弱いエンティティセット、関係を識別し、連想エンティティセット、全部又は一部の参加、および関係のために外を見る必要があるのでプロセスは、実際にはもっと複雑ですカーディナリティ

また、皆さんには、Chenの論文を詳細に調べることを強くお勧めします。

PS。 sectionのプライマリキー(および対応する外部キーはteachesおよびtakes)は間違っています。プライマリはsec_idでなければならないと思っていますが、実際にあなたのモデルが実際に表現していること(テーブルとカラムの名前の私自身の解釈を超えて)は分かりません。

関連する問題