sql >> Databáze >  >> Database Tools >> phpMyAdmin

Vytváření vztahů mezi tabulkami PHPMYADMIN

Vaše otázka mi není vůbec jasná. Například mluvíte o tom, že pacienti a sestry jsou spojeni s "Prioritou" a lékaři jsou spojeni s "Časem" a "Prioritou" - a píšete, jako by to byly jiné tabulky - ale nepopisujete je.

Níže je uveden způsob, jak bych vyřešil váš problém na základě mlhavého chápání vašeho problému.

Nevím, co znamená A&E. Předpokládám, že je to klinika, nemocnice nebo jiné zařízení.

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.

Je zřejmé, že váš "stav" může být jiný. Zde ve Spojených státech mají všechny naše státy jedinečný 2místný kód.

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

Nepopsali jste, co potřebujete vědět o lékařích, takže předpokládám, že je to stejné jako to, co potřebujete vědět o sestrách.

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

Věci jako:chřipka, bronchitida, infekce dutin atd.

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

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

Vložil jsem anamnézu pacienta do vlastní tabulky, abychom mohli ke každému pacientovi přiřadit více nemocí a také datum, kdy pacient každou nemoc měl.

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.

Opět platí, že vaše "stavy" mohou mít jinou velikost id nebo název.

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

Věci jako:závratě, únava, ucpané dutiny, dušnost atd.

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

Tato tabulka obsahuje informace o každé návštěvě pacienta v A&E. Jakýkoli záznam, který nemá koncový čas, by představoval pacienta, který je v současné době na A&E a čeká, až ho uvidí lékař/sestra. Můžete určit, jak dlouho pacient čeká, porovnáním aktuálního času s časem začátku. A prioritu by samozřejmě zadával/aktualizoval přijímající úředník, sestra, lékař atd.

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

Pacienta může vidět více lékařů...

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

A více sester může vidět pacienta...

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

Když pacient přijde na návštěvu, má obvykle více příznaků...

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



  1. Problém Microsoft SQL Service Management Studio 2005 „Skript XXX jako CREATE To“.

  2. Změna CommandTimeout v SQL Management Studio

  3. Nerozpoznaný typ příkazu. (blízko WITH na pozici 0)

  4. #1025 – Chyba při přejmenování './database/#sql-2e0f_1254ba7' na './database/table' (errno:150)