[sql] HMS

Viewer

  1. -- DROP DATABASE IF EXISTS hms;
  2. -- CREATE DATABASE hms;
  3. USE hms;
  4.  
  5. CREATE TABLE Patients (
  6.     patientID VARCHAR(36) PRIMARY KEY,
  7.     firstName VARCHAR(255) NOT NULL,
  8.     lastName VARCHAR(255) NOT NULL,
  9.     dateOfBirth DATE NOT NULL,
  10.     gender ENUM('Male', 'Female', 'Other') NOT NULL,
  11.     email VARCHAR(255) UNIQUE,
  12.     password VARCHAR(255) NOT NULL
  13. );
  14.  
  15. CREATE TABLE Departments (
  16.     departmentID INT AUTO_INCREMENT PRIMARY KEY,
  17.     departmentName VARCHAR(255) UNIQUE NOT NULL
  18. );
  19.  
  20. CREATE TABLE Doctors (
  21.     doctorID INT AUTO_INCREMENT PRIMARY KEY,
  22.     firstName VARCHAR(255) NOT NULL,
  23.     lastName VARCHAR(255) NOT NULL,
  24.     gender ENUM('Male', 'Female', 'Other') NOT NULL,
  25.     departmentID INT,
  26.     FOREIGN KEY (departmentID) REFERENCES Departments(departmentID)
  27. );
  28.  
  29. CREATE TABLE Visits (
  30.     visitID INT AUTO_INCREMENT PRIMARY KEY,
  31.     patientID VARCHAR(36),
  32.     doctorID INT,
  33.     visitDate DATE,
  34.     departmentID INT,
  35.     FOREIGN KEY (patientID) REFERENCES Patients(patientID),
  36.     FOREIGN KEY (doctorID) REFERENCES Doctors(doctorID),
  37.     FOREIGN KEY (departmentID) REFERENCES Departments(departmentID)
  38. );
  39.  
  40. CREATE TABLE Prescriptions (
  41.     prescriptionID VARCHAR(36) PRIMARY KEY DEFAULT (UUID()),
  42.     visitID INT,
  43.     prescriptionDate DATE,
  44.     FOREIGN KEY (visitID) REFERENCES Visits(visitID)
  45. );
  46.  
  47. CREATE TABLE Medications (
  48.     prescriptionID VARCHAR(36),
  49.     medication VARCHAR(255),
  50.     FOREIGN KEY (prescriptionID) REFERENCES Prescriptions(prescriptionID)
  51. );
  52.  
  53. -- Insert patients
  54. INSERT INTO Patients (patientID, firstName, lastName, dateOfBirth, gender, email, password)
  55. VALUES 
  56.   ('a11450f5-dcd5-11ee-a372-4ccc6a43e5c9', 'Ahmet', 'Yılmaz', '1990-01-15', 'Male', '[email protected]', 'password1'),
  57.   ('b11450f5-dcd5-11ee-a372-4ccc6a43e5c9', 'Ayşe', 'Kaya', '1992-05-20', 'Female', '[email protected]', 'password2'),
  58.   ('c11450f5-dcd5-11ee-a372-4ccc6a43e5c9', 'Mehmet', 'Öztürk', '1985-08-12', 'Male', '[email protected]', 'password3');
  59.  
  60. -- Insert Turkish departments
  61. INSERT INTO Departments (departmentName)
  62. VALUES 
  63.   ('Dahiliye'),
  64.   ('Cerrahi'),
  65.   ('Kadın Hastalıkları ve Doğum'),
  66.   ('Çocuk Sağlığı ve Hastalıkları'),
  67.   ('Göz Hastalıkları'),
  68.   ('Kardiyoloji');
  69.  
  70. -- Insert Turkish doctors
  71. INSERT INTO Doctors (firstName, lastName, gender, departmentID)
  72. VALUES 
  73.   ('Fatma', 'Demir', 'Female', 1),
  74.   ('Ali', 'Çelik', 'Male', 2),
  75.   ('Zeynep', 'Türk', 'Female', 1);
  76.  
  77. -- INSERT INTO Visits (PatientID, DoctorID, DepartmentID, VisitDate)
  78. -- VALUES ('a11450f5-dcd5-11ee-a372-4ccc6a43e5c9', '2', '1', '2024-03-07');
  79.  
  80. SELECT * FROM Patients;
  81. SELECT * FROM Doctors;
  82. SELECT * FROM Departments;
  83. SELECT * FROM Visits;
  84. SELECT * FROM Prescriptions;
  85. SELECT * FROM Medications;
  86.  

Editor

You can edit this paste and save as new:


File Description
  • HMS
  • Paste Code
  • 07 May-2024
  • 2.73 Kb
You can Share it: