Advertisement
Guest User

Untitled

a guest
May 5th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.50 KB | None | 0 0
  1. CREATE TABLE Person (
  2. personID VARCHAR(20) NOT NULL,
  3. firstName VARCHAR(20) NOT NULL,
  4. lastName VARCHAR(20) NOT NULL,
  5. birthDate DATE NOT NULL,
  6. phone VARCHAR(12) NOT NULL,
  7. CONSTRAINT pk_Person PRIMARY KEY (personID)
  8. );
  9.  
  10. CREATE TABLE Employee (
  11. personID VARCHAR(20) NOT NULL,
  12. hireDate DATE NOT NULL,
  13. CONSTRAINT fk_Person_Employee FOREIGN KEY (personID) REFERENCES Person (personID),
  14. CONSTRAINT pk_Employee PRIMARY KEY (personID)
  15. );
  16.  
  17. CREATE TABLE Physician (
  18. personID VARCHAR(20) NOT NULL,
  19. specialty VARCHAR(20) NOT NULL,
  20. pagerNumber VARCHAR(20) NOT NULL,
  21. CONSTRAINT fk_Person_Physician FOREIGN KEY (personID)
  22. REFERENCES Person (personID),
  23. CONSTRAINT pk_Physician PRIMARY KEY (personID)
  24. );
  25.  
  26. CREATE TABLE Patient (
  27. personID VARCHAR(20),
  28. contactDate DATE NOT NULL,
  29. treatingpersonID VARCHAR(20) NOT NULL,
  30. CONSTRAINT fk_Person_Patient FOREIGN KEY (personID)
  31. REFERENCES Person (personID),
  32. CONSTRAINT fk_Physician_Patient FOREIGN KEY (treatingpersonID)
  33. REFERENCES Physician (personID),
  34. CONSTRAINT pk_Patient PRIMARY KEY (personID)
  35. );
  36.  
  37. CREATE TABLE Volunteer (
  38. personID VARCHAR(20) NOT NULL,
  39. CONSTRAINT fk_Person_Volunteer FOREIGN KEY (personID)
  40. REFERENCES Person (personID),
  41. CONSTRAINT pk_Volunteer PRIMARY KEY (personID)
  42. );
  43.  
  44. CREATE TABLE Nurse (
  45. personID VARCHAR(20) NOT NULL,
  46. certificate BOOLEAN NOT NULL,
  47. CONSTRAINT fk_Employee_Nurse FOREIGN KEY (personID)
  48. REFERENCES Employee (personID),
  49. CONSTRAINT pk_Nurse PRIMARY KEY (personID)
  50. );
  51.  
  52. CREATE TABLE RegNurse (
  53. personID VARCHAR(20) NOT NULL,
  54. CONSTRAINT fk_Nurse_RegNurse FOREIGN KEY (personID)
  55. REFERENCES Employee (personID),
  56. CONSTRAINT pk_Nurse PRIMARY KEY (personID)
  57. );
  58.  
  59. CREATE TABLE CareCenter (
  60. careCenterName VARCHAR(20) NOT NULL,
  61. careCenterLocation VARCHAR(30) NOT NULL,
  62. headpersonID VARCHAR(20) NOT NULL,
  63. personID VARCHAR(20) NOT NULL,
  64. CONSTRAINT fk_RegisteredNurse_CareCenter FOREIGN KEY (headpersonID)
  65. REFERENCES Employee (personID),
  66. CONSTRAINT fk_Nurse_CareCenter FOREIGN KEY (personID)
  67. REFERENCES Nurse(personID),
  68. CONSTRAINT pk_CareCenter PRIMARY KEY (careCenterName)
  69. );
  70.  
  71. CREATE TABLE Resident (
  72. personID VARCHAR(20) NOT NULL,
  73. admittedDate DATE NOT NULL,
  74. CONSTRAINT fk_Patient_Resident FOREIGN KEY (personID)
  75. REFERENCES Patient (personID),
  76. CONSTRAINT pk_Resident PRIMARY KEY (personID)
  77. );
  78.  
  79. create table mimisInsurance(
  80. insurance_id VARCHAR(20) NOT NULL,
  81. personID VARCHAR(20) NOT NULL,
  82. discount VARCHAR(15) NOT NULL,
  83. CONSTRAINT fk_mimisInsurance_resident FOREIGN KEY(personID) REFERENCES Resident(personID),
  84. CONSTRAINT pk_mimisInsurance PRIMARY KEY (personID, insurance_id)
  85. );
  86.  
  87. CREATE TABLE Bed (
  88. careCenterName VARCHAR(20) NOT NULL,
  89. bedNumber INT(10) NOT NULL,
  90. personID VARCHAR(20),
  91. CONSTRAINT fk_CareCenter_Bed FOREIGN KEY (careCenterName)
  92. REFERENCES CareCenter (careCenterName),
  93. CONSTRAINT fk_Resident_Bed FOREIGN KEY (personID)
  94. REFERENCES Patient (personID),
  95. CONSTRAINT pk_Bed PRIMARY KEY (careCenterName , bedNumber)
  96. );
  97.  
  98. CREATE TABLE Staff (
  99. personID VARCHAR(20) NOT NULL,
  100. jobClass VARCHAR(20) NOT NULL,
  101. CONSTRAINT fk_Employee_Staff FOREIGN KEY (personID)
  102. REFERENCES Employee (personID),
  103. CONSTRAINT pk_Staff PRIMARY KEY (personID)
  104. );
  105.  
  106. create table Biotech /* A certificate */
  107. (
  108. biotech_id VARCHAR(15) NOT NULL,
  109. certificate_num VARCHAR(15) NOT NULL,
  110. bt_type VARCHAR(20) NOT NULL,
  111. CONSTRAINT pk_biotech PRIMARY KEY (biotech_id)
  112. );
  113.  
  114. CREATE TABLE Technician (
  115. personID VARCHAR(20) NOT NULL,
  116. skill VARCHAR(20) NOT NULL,
  117. biotech_id VARCHAR(15) NOT NULL,
  118. CONSTRAINT fk_technician_biotech FOREIGN KEY(biotech_id) REFERENCES Biotech(biotech_id),
  119. CONSTRAINT fk_Employee_Technician FOREIGN KEY (personID) REFERENCES Employee (personID),
  120. CONSTRAINT pk_Technician PRIMARY KEY (personID)
  121. );
  122.  
  123. CREATE TABLE Laboratory (
  124. labName VARCHAR(20) NOT NULL,
  125. labLocation VARCHAR(20) NOT NULL,
  126. CONSTRAINT pk_Laboratory PRIMARY KEY (labName)
  127. );
  128.  
  129. CREATE TABLE Outpatient (
  130. personID VARCHAR(20) NOT NULL,
  131. CONSTRAINT fk_Patient_Outpatient FOREIGN KEY (personID)
  132. REFERENCES Patient (personID),
  133. CONSTRAINT pk_Outpatient PRIMARY KEY (personID)
  134. );
  135.  
  136. CREATE TABLE Visit (
  137. patientID VARCHAR(20) NOT NULL,
  138. physicianID VARCHAR(20) NOT NULL,
  139. visitDate DATE NOT NULL,
  140. comments VARCHAR(100),
  141. CONSTRAINT fk_Outpatient_Visit FOREIGN KEY (patientID)
  142. REFERENCES Outpatient (personID),
  143. CONSTRAINT fk_Physician_Visit FOREIGN KEY (physicianID)
  144. REFERENCES Physician (personID),
  145. CONSTRAINT pk_Visit PRIMARY KEY (patientID , physicianID , visitDate)
  146. );
  147.  
  148.  
  149. CREATE TABLE TechnicianLab (
  150. personID VARCHAR(20) NOT NULL,
  151. labName VARCHAR(20) NOT NULL,
  152. CONSTRAINT fk_Technician_TechnicianLab FOREIGN KEY (personID)
  153. REFERENCES Technician (personID),
  154. CONSTRAINT fk_Laboratory_TechnicianLab FOREIGN KEY (labName)
  155. REFERENCES Laboratory (labName),
  156. CONSTRAINT pk_TechnicianLab PRIMARY KEY (personID , labName)
  157. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement