私はSybasePowerDesignerで概念モデルを作成しています。 制限は次のとおりです。 1人の医師は、勤務時間中(シフト)に一度に1つのオフィスでしか勤務できません。 私は医者とオフィスの関係は多かれ少なかれあるべきだと思いますが、どうですか 時間制限(「彼の勤務時間中」)? それは新しいテーブルSHIFTである必要がありますか? したがって、4つのテーブル(DOCTOR、OFFICE、SHIFT、およびOFFICE SCHEDULE)が必要だと思います。 オフィススケジュールは、他の3つのエンティティすべてを接続するテーブルである必要があります 複合主キー(id_doctor、id_office、id_shift)が必要ですか?
4364 次
3 に答える
1
そのキー (id_doctor、id_office、id_shift) により、医師は 1 つのシフトで多くのオフィスで働くことができます。医師とシフトのテーブルのキーを試してください - オフィスは従属フィールドです。ただし、これにより、オフィスがシフトに複数の医師を配置できるようになりますが、それが許可されているかどうかはわかりません.
于 2009-09-23T16:53:10.087 に答える
0
主キーを変更して、オフィスとシフトのみを含めるようにしますが、医師とシフトに個別の一意の制約も追加します。
于 2009-09-23T16:57:33.353 に答える
0
OFFICE SCHEDULE の主キーは (id_office, id_shift) である必要があります。id_doctor はテーブルにある必要がありますが、主キーの一部ではありません。これにより、指定されたオフィスとシフトが与えられた場合、そのオフィスには最大で 1 人の医師が存在できるというルールが適用されます。
もちろん、主キーを形成する 2 つに加えて、これら 3 つすべてが外部キーです。
于 2009-09-23T17:56:37.380 に答える