Идентификация и не выявление отношений

У меня есть следующая структура db и я хочу добавить в новую таблицу под названием блокнот:

ClinicTable (Id PK)

PatientTable (Id PK, ClinicId PK FK)

DoctorTable (Id PK, ClinicId PK FK)

КонсультацияТаблица (Id PK, ClinicId PK FK, PatientId FK, DoctorId FK)

  • Я жду, чтобы услышать ответ: деловое требование, но блокнот может быть привязан к консультации (от 1 до 1) или привязан к пациенту (от 1 до М).
  • Мы медленно реструктурируем и рефакторинг как часть новой сборки продукта, поэтому я не хочу добавлять примечание в таблицу консультаций - я бы предпочел хранить ее отдельно
  • У пациента или консультации может быть или не быть записной книжки, но запись в блокноте не может существовать без пациента или консультации.
  • Запись в блокнот всегда будет вводиться одним врачом и не может принадлежать другому врачу

Как определить, следует ли устанавливать отношения, идентифицирующие или не идентифицирующие?

У всех других таблиц есть идентификатор клиники, но я не вижу, что мне это нужно?

Я думаю, что это должно выглядеть следующим образом ...

Если записка привязана к пациенту, то у меня есть:

NotepadTable (Id PK, PatientId PK FK, DoctorId PK FK)

Если записка привязана к консультациям, я имею:

NotepadTable (Id PK, ConsultationId PK FK)

sql-server,database-design,

0

Ответов: 0

Идентификация и не выявление отношений

У меня есть следующая структура db и я хочу добавить в новую таблицу под названием блокнот:

ClinicTable (Id PK)

PatientTable (Id PK, ClinicId PK FK)

DoctorTable (Id PK, ClinicId PK FK)

КонсультацияТаблица (Id PK, ClinicId PK FK, PatientId FK, DoctorId FK)

  • Я жду, чтобы услышать ответ: деловое требование, но блокнот может быть привязан к консультации (от 1 до 1) или привязан к пациенту (от 1 до М).
  • Мы медленно реструктурируем и рефакторинг как часть новой сборки продукта, поэтому я не хочу добавлять примечание в таблицу консультаций - я бы предпочел хранить ее отдельно
  • У пациента или консультации может быть или не быть записной книжки, но запись в блокноте не может существовать без пациента или консультации.
  • Запись в блокнот всегда будет вводиться одним врачом и не может принадлежать другому врачу

Как определить, следует ли устанавливать отношения, идентифицирующие или не идентифицирующие?

У всех других таблиц есть идентификатор клиники, но я не вижу, что мне это нужно?

Я думаю, что это должно выглядеть следующим образом ...

Если записка привязана к пациенту, то у меня есть:

NotepadTable (Id PK, PatientId PK FK, DoctorId PK FK)

Если записка привязана к консультациям, я имею:

NotepadTable (Id PK, ConsultationId PK FK)

00SQL-сервер, база данных, дизайн,
Похожие вопросы