Advertisement
Guest User

Untitled

a guest
Mar 26th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. DROP TABLE IF EXISTS department CASCADE;
  2. DROP TABLE IF EXISTS nurse CASCADE;
  3. DROP TABLE IF EXISTS treatment_plan CASCADE;
  4. DROP TABLE IF EXISTS treatment_event CASCADE;
  5. DROP TABLE IF EXISTS ward CASCADE;
  6. DROP TABLE IF EXISTS hospital_stay CASCADE;
  7. DROP TABLE IF EXISTS medication CASCADE;
  8. DROP TABLE IF EXISTS drug CASCADE;
  9. DROP TABLE IF EXISTS physiotherapy CASCADE;
  10. DROP TABLE IF EXISTS surgery CASCADE;
  11. DROP TABLE IF EXISTS physician CASCADE;
  12. DROP TABLE IF EXISTS patient CASCADE;
  13.  
  14. CREATE TABLE department (
  15.   dID   int8 NOT NULL,
  16.   label varchar(255) NOT NULL UNIQUE,
  17.   PRIMARY KEY (dID));
  18. CREATE TABLE ward (
  19.   wID          int8 NOT NULL,
  20.   label        varchar(255),
  21.   numberOfBeds int8 NOT NULL,
  22.   PRIMARY KEY (wID));
  23.  
  24. CREATE TABLE nurse (
  25.   nID           SERIAL PRIMARY KEY,
  26.   preName       varchar(255) NOT NULL,
  27.   lastName      varchar(255) NOT NULL,
  28.   dateOfBirth   date NOT NULL,
  29.   chefNurse int8);
  30.  
  31. CREATE TABLE physician (
  32.   phID           SERIAL PRIMARY KEY,
  33.   preName       varchar(255) NOT NULL,
  34.   lastName      varchar(255) NOT NULL,
  35.   dateOfBirth   date NOT NULL,
  36.   academicDegree varchar(255) NOT NULL,
  37.   chefPhysician  int8);
  38.  
  39. CREATE TABLE drug (
  40.   dID                     SERIAL,
  41.   activeIngredient        int8,
  42.   activeIngredientContent varchar(255) NOT NULL,
  43.   label                   varchar(255) NOT NULL,
  44.   manufacturer            varchar(255) NOT NULL,
  45.   PRIMARY KEY (dID)
  46.   );
  47.  
  48. CREATE TABLE surgery (
  49.   sID                   SERIAL,
  50.   bodyRegion            varchar(255) NOT NULL,
  51.   label                 varchar(255) NOT NULL,
  52.   organ                 varchar(255) NOT NULL,
  53.   surgicalForm          varchar(255) NOT NULL,
  54.   PRIMARY KEY(sID)
  55.   );
  56.  
  57. CREATE TABLE physiotherapy (
  58.   pID                   SERIAL,
  59.   duration              varchar(255),
  60.   exerciseForm          varchar(255) NOT NULL,
  61.   label                 varchar(255) NOT NULL,
  62.   PRIMARY KEY(pID)
  63.   );
  64.  
  65. CREATE TABLE medication (
  66.   medID                     SERIAL,
  67.   dosing                    varchar(255) NOT NULL,
  68.   label                     varchar(255),
  69.   drug                      int8 REFERENCES drug(dID) ON DELETE CASCADE,
  70.   PRIMARY KEY(medID)
  71.   );
  72.  
  73. CREATE TABLE treatment_event (
  74.   teID                  SERIAL,
  75.   treatment_plantpID    int8 NOT NULL,
  76.   eventDate             date NOT NULL,
  77.   eventTime             time NOT NULL,
  78.   medication            int8 REFERENCES medication(medID),
  79.   surgery               int8 REFERENCES surgery(sID),
  80.   physiotherapy         int8 REFERENCES physiotherapy(pID),
  81.   PRIMARY KEY (teID)
  82.   );
  83.  
  84. CREATE TABLE treatment_plan (
  85.   tpID        SERIAL,
  86.   description varchar(255) NOT NULL,
  87.   name        varchar(255) NOT NULL,
  88.   treatment_event   int8 REFERENCES treatment_event(teID),
  89.   PRIMARY KEY(tpID)
  90.   );
  91.  
  92. CREATE TABLE patient (
  93.   pID             SERIAL,
  94.   preName           varchar(255) NOT NULL,
  95.   lastName          varchar(255) NOT NULL,
  96.   dateOfBirth       date NOT NULL,
  97.   insuranceNumber   varchar(255) NOT NULL,
  98.   healthInsurance   varchar(255) NOT NULL,
  99.   treatment_plan    int8 REFERENCES treatment_plan(tpID),
  100.   PRIMARY KEY (pID)
  101.   );
  102.  
  103. CREATE TABLE hospital_stay (
  104.   entryDate     date NOT NULL,
  105.   releaseDate   date NOT NULL,
  106.   pID           int8 REFERENCES patient(pID));
  107.  
  108. ALTER TABLE patient ADD FOREIGN KEY (treatment_plan) REFERENCES treatment_plan;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement