0

2種類のテーブル間の関係を設定するのにいくつか問題があります。私はPatientというテーブル(患者ID、住所、名前などに関するデータを保持しています)とVisitsという別のテーブル(IDを含む)を持っています「このキーは増分変数であり、挿入には挿入しませんqstmt"、VisitDate、NextVisitDate、..etc)

現在、すべての患者は異なる日付で複数の訪問を受ける可能性があり、日付ごとに複数の患者がいる場合があります。たとえば、日付: 09-13-2012 には多くの患者が含まれる場合があります-2012 年 9 月、2012 年 7 月 3 日

外部キーをどこに置くべきか..

注: 訪問ごとに ID 変数があり、それは増分変数です。しかし、実際にプログラムで検索するときは日付で検索するので、間違っている場合は修正して、フィールド日付を作成してください。多くの患者が同じ visitDate を持つ可能性があるため、日付は一意ではないため、日付をキーと見なすことはできません」

4

1 に答える 1

0

私には、これは通常の 1 対多の外部キー関係のように見えます。テーブルには、訪問に参加する患者へのVisits外部キーがあり、これはテーブル内の単なる属性であり、主キーの一部ではありません。同じ患者が同じ日に 2 回の来院がある場合でも、特定の日に多くの来院がある可能性があるため、一意のインデックスもありません。これを禁止したい場合は、 と に複合一意キー インデックスを作成できます。PatientIdVisitDateVisitsPatientIdVisitDate

次に、特定の日付範囲でVisitsテーブルに SQL クエリを作成し、その日付のすべての訪問を取得できます。VisitDate訪問のPatientId外部キーを使用して、Patientsテーブルに参加し、訪問の患者に関するデータを取得できます。

于 2012-09-13T13:43:03.767 に答える