phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

Créer des relations entre les tables PHPMYADMIN

Votre question n'est pas du tout claire pour moi. Par exemple, vous parlez de patients et d'infirmières liés à "Priorité" et de médecins liés à "Temps" et "Priorité" - et vous écrivez comme s'il s'agissait d'autres tables - mais vous ne les décrivez pas.

Voici comment je résoudrais votre problème, sur la base de la compréhension floue que j'ai de votre problème.

Je ne sais pas ce que signifie A&E. Je suppose qu'il s'agit d'une clinique, d'un hôpital ou d'un autre établissement.

aes
    id                  unsigned int(P)
    street_address      varchar(75)
    city_id             unsigned int(F cities.id)
    postcode            varchar(10) // Whatever the size of your postal code.
    telenumber          varchar(10) // Whatever the size of your telenumber.

Évidemment, votre "état" pourrait être différent. Ici aux États-Unis, nos états ont tous un code unique à 2 caractères.

cities
    id                      unsigned int(P)
    name                    varchar(50)
    state_id                char(2)(F states.id)

Vous n'avez pas décrit ce que vous devez savoir sur les médecins, donc je suppose que c'est la même chose que ce que vous devez savoir sur les infirmières.

doctors
    id                  unsigned int(P)
    forename            varchar(50)
    surname             varchar(50)

Des choses comme :la grippe, la bronchite, l'infection des sinus, etc.

illnesses
    id                  unsigned int(P)
    description         varchar(75)

nurses
    id                  unsigned int(P)
    forename            varchar(50)
    surname             varchar(50)

J'ai mis l'historique du patient dans son propre tableau afin que nous puissions associer plusieurs maladies à chaque patient ainsi qu'une date à laquelle le patient a eu chaque maladie.

patient_history
    id                  unsigned int(P)
    patient_id          unsigned int(F patients.id)
    illness_id          unsigned int(F illnesses.id)
    qwhen               date

patients
    id                  unsigned int(P)
    forename            varchar(50)
    surname             varchar(50)
    gender              enum('f','m')
    dob                 date
    street_address      varchar(75)
    city_id             unsigned int(F cities.id)
    postcode            varchar(10) // Whatever the size of your postal code.
    telenumber          varchar(10) // Whatever the size of your telenumber.

Encore une fois, vos "états" peuvent avoir un identifiant ou un nom de taille différente.

states
    id                      char(2)(P)
    name                    varchar(50)

Choses comme :étourdissements, fatigue, congestion des sinus, essoufflement, etc.

symptoms
    id                  unsigned int(P)
    description         varchar(50)

Ce tableau contient des informations sur chaque fois qu'un patient visite un A&E. Tout enregistrement qui n'a pas d'heure de fin représenterait un patient qui est actuellement dans un A&E en attente d'être vu par un médecin/une infirmière. Vous pouvez déterminer la durée d'attente d'un patient en comparant l'heure actuelle à beg_time. Et bien sûr, la priorité serait saisie/mise à jour par le préposé aux admissions, l'infirmière, le médecin, etc.

visits
    id                  unsigned int(P)
    patient_id          unsigned int(F patients.id)
    nurse_id            unsigned int(F nurses.id)
    ae_id               unsigned int(F aes.id)
    priority            unsigned tinyint // 1 = Critical, 2 = Urgent, 3 = whatever...
    beg_time            datetime
    end_time            datetime

Plusieurs médecins peuvent voir un patient...

visits_doctors
    id                  unsigned int(P)
    visit_id            unsigned int(F visits.id)
    doctor_id           unsigned int(F doctors.id)

Et plusieurs infirmières peuvent voir un patient...

visits_nurses
    id                      unsigned int(P)
    visit_id                unsigned int(F visits.id)
    nurse_id                unsigned int(F nurses.id)

Un patient présente généralement plusieurs symptômes lorsqu'il se présente pour une visite...

visits_symptoms
    id                  unsigned int(P)
    visit_id            unsigned int(F visits.id)
    symptom_id          unsigned int(F symptoms.id)