Схема базы данных для отношений между родителями и детьми - PullRequest
0 голосов
/ 07 июня 2019

Мне нужно разработать схему базы данных для базы данных педиатрии, которая позволяет следующее:

  1. Сохранять фамилию, имя, дату рождения и пол для каждого пациента.

  2. Храните всех соответствующих опекунов, которые могут включать мать, отца, законного опекуна и их отношения с пациентом (ребенком).

  3. Определяет родных братьев и сестер и их отношения с пациентом.

4, Позволяет пациентам со временем стать опекунами / родителями.

Хранит номера телефонов, связанных с каждым человеком, включая пациентов и родителей / опекунов.

Я действительно заперт на лучший способ решения этой проблемы.Я рассматриваю три таблицы: tblPatients, tblGuardians и tblTelephones, но я думаю, что для родителей, имеющих нескольких детей, потребуется несколько записей.Я уверен, что эта проблема была решена в прошлом, но я не нашел подходящего ответа.Любое понимание будет оценено.

Ответы [ 2 ]

3 голосов
/ 07 июня 2019
Позволяет пациентам со временем стать опекунами / родителями.

Это ключ.Если позже пациенты могут стать опекунами / родителями, вам, вероятно, следует иметь таблицу для «лица», которая описывает любого человека, а затем классифицировать этого человека с помощью других таблиц.

Например

  • PERSON таблица определяет демографические данные ((фамилия, имя, дата рождения и пол, номер телефона и т. Д.)
  • PATIENT Таблица определяет данные пациента с FK и указывает на конкретного ЛИЦА,необязательно с уникальным ограничением на PATIENT.PERSONID, чтобы гарантировать, что никакие два пациента не являются одним и тем же человеком.Наличие записи в этой таблице подразумевает, что PERSON является PATIENT
  • RELATIONSHIP таблицей, связывающей две PERSON записи вместе и определяющей отношения.Person1ID, Person2ID и RelationshipType, например.
0 голосов
/ 07 июня 2019

Вот мой подход к проблеме.

tbl_person, столбцы:

  • ID

  • first_name

  • last_name

  • birth_date

  • пол

  • контактная информация

  • другая личная информация

tbl_patient, столбцы:

  • ID

  • tbl_person_id

  • "другие столбцы, относящиеся к пациенту, такие как причина, симптомы, диагноз и т. Д."

tbl_patient_has_guardian (один ко многим), столбцы:

  • tbl_patient_id (первичный ключ)

  • tbl_person_id (первичный ключ)

  • patient_relationship_to_guardian_type

    • мама, папа и т. Д.

Поэтому при добавлении новой записи пациента добавьте личную информацию в tbl_person, а затем укажите идентификатор tbl_person в tbl_patient.

tbl_patient_has_guardian, у одного пациента может быть несколько опекунов. У опекуна есть определенный тип отношений, назначенный пациенту, это может быть мать, отец и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...