phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

Criando relações entre tabelas PHPMYADMIN


Sua pergunta não está muito clara para mim. Por exemplo, você fala sobre pacientes e enfermeiras sendo vinculados a "Prioridade" e médicos sendo vinculados a "Tempo" e "Prioridade" - e você escreve como se fossem outras tabelas - mas não as descreve.

Abaixo está como eu resolveria seu problema, com base no entendimento nebuloso que tenho do seu problema.

Não sei o que significa A&E. Estou assumindo que é uma clínica, hospital ou outra instalação.
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.

Obviamente seu "estado" poderia ser diferente. Aqui nos Estados Unidos, todos os nossos estados têm um código exclusivo de 2 caracteres.
cities
    id                      unsigned int(P)
    name                    varchar(50)
    state_id                char(2)(F states.id)

Você não descreveu o que você precisa saber sobre médicos, então estou assumindo que é o mesmo que você precisa saber sobre enfermeiras.
doctors
    id                  unsigned int(P)
    forename            varchar(50)
    surname             varchar(50)

Coisas como:gripe, bronquite, sinusite, etc.
illnesses
    id                  unsigned int(P)
    description         varchar(75)

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

Coloquei o histórico do paciente em sua própria tabela para que possamos associar várias doenças a cada paciente, bem como uma data de quando o paciente teve cada doença.
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.

Novamente, seus "estados" podem ter um ID ou nome de tamanho diferente.
states
    id                      char(2)(P)
    name                    varchar(50)

Coisas como:tontura, fadiga, congestão nasal, falta de ar, etc.
symptoms
    id                  unsigned int(P)
    description         varchar(50)

Esta tabela contém informações sobre todas as vezes que um paciente visita um pronto-socorro. Qualquer registro que não tenha um end_time representaria um paciente que está atualmente em um pronto-socorro esperando para ser atendido por um médico/enfermeiro. Você pode determinar quanto tempo um paciente está esperando comparando a hora atual com a hora_inicial. E, claro, a prioridade seria inserida/atualizada pelo recepcionista, enfermeira, médico, 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

Vários médicos podem ver um paciente...
visits_doctors
    id                  unsigned int(P)
    visit_id            unsigned int(F visits.id)
    doctor_id           unsigned int(F doctors.id)

E vários enfermeiros podem ver um paciente...
visits_nurses
    id                      unsigned int(P)
    visit_id                unsigned int(F visits.id)
    nurse_id                unsigned int(F nurses.id)

Um paciente geralmente tem vários sintomas quando vem para uma consulta...
visits_symptoms
    id                  unsigned int(P)
    visit_id            unsigned int(F visits.id)
    symptom_id          unsigned int(F symptoms.id)