2017-11-07 7 views
0

私は私のプロジェクトからERモデルでは、これらのエンティティを持っているための三元関係を使用する必要があります 私はこれらのエンティティ

  • を学生
  • 教授
  • 件名は、私は三元関係とそれらを接続する必要があります、またはバイナリ関係のそれぞれの私は三者関係を使いました。たぶん、私は関係のための最高の可能な名前を持っていないが、それは評価を含む。

    enter image description here

    そして、私はあなたの図に基づいてデータベース

答えて

1

関係を表現するテーブルの主キーとして使用する必要があり、接続テーブルからのIds三項関係を使用する必要がある場合も、それはそれぞれのようですStudent/Subjectの組み合わせは、Professorを決定します。バイナリ関係でこれを比較してみましょう:

StudentSubject間のバイナリの関係は、あなたがどのProfessorを指定せずに、どのSubjectsを服用しているStudents記録することができるようになります。これはあなたのシステムに有効ですか、またはStudent/Subjectの組み合わせごとにProfessorをキャプチャする必要がありますか? StudentProfessor

バイナリ関係が各StudentStudentためProfessorを記録し、またはおそらくはProfessorsのセットになります。各Professorがどの科目をStudentに教えているかわからなくても便利ですか?

SubjectProfessorの間の2進関係は、各被験者に1つ以上のProfessorsを記録します。それは、彼らが割り当てられているか、教える予定のものとは対照的に、Professorが教えることができるか、または資格を得ているものを捕らえるのに役立ちます。

は、私は2つの学校の管理システム上で働いてきた、と私たちは(Student PK, Subject PK)(学生が撮影した科目)と(Professor PK, Subject PK)(教授すること教えることができる科目)、代わりに三元関係(Student PK, Subject PK, Professor)のは、我々が対象のグループを定義して撮影したりセクションSections (SectionID PK, Subject, Professor)と学生セクション割り当て(Student PK, Subject PK, SectionID)。件名のグループまたはセクションは、ルーム番号、タイムテーブルの手配、授業の言語などの属性を追加するための便利な場所です。

関連する問題