1

特定の役割に関連するデータをリレーショナルデータベースに格納する方法について、アーキテクチャに問題があります。

Subscriber Contact私には、、、およびの3つの役割がTeacherありStudentます。それらはすべてUsersテーブルに格納されますが、それぞれに関連する特定のプロパティがあります。学生にはSchoolId、、Gradeサブスクライバーの連絡先には、、DistrictId教師には、、がProgramIdありSchoolIdますGrade

サブスクライバーの連絡先、教師、学生用に3つの個別のテーブルを用意する必要がありますか、それとも何らかのキー/値の検索を行う必要がありますか?キー/値ルックアップの場合、これを行うにはどうすればよいですか?また、やのような外部キーに対してどのように行うことができますDistrictIdSchoolId

4

1 に答える 1

1

継承のようなものをシミュレートできます。subscriberロール、teacherおよびのすべての共通属性で構成されるスーパークラス テーブルstudent。次に、それぞれに固有のアーティビュートで構成される各ロールの 3 つのサブクラス テーブル。スーパークラス エンティティと各サブクラス エンティティの間には 1 対 1 の関係があります。

于 2012-01-19T00:35:58.737 に答える