From 099c90004ab638eedebd167ae07d5aca81a4eaa2 Mon Sep 17 00:00:00 2001 From: Safa Almaamari Date: Thu, 23 Jul 2026 14:27:18 +0400 Subject: [PATCH 1/3] DDL SCRIPT --- .../org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql diff --git a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql new file mode 100644 index 00000000..e69de29b From 6632fb0895f738c3b33b245a0c14706eb0058b15 Mon Sep 17 00:00:00 2001 From: Safa Almaamari Date: Thu, 23 Jul 2026 14:30:21 +0400 Subject: [PATCH 2/3] sample data SQL --- .../hospitalsystem/hospitalDDL.sql | 240 ++++++++++++++++++ .../hospitalsystem/sample_data.sql | 0 2 files changed, 240 insertions(+) create mode 100644 src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql diff --git a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql index e69de29b..8e4544ec 100644 --- a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql +++ b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospitalDDL.sql @@ -0,0 +1,240 @@ +CREATE TABLE "DEPARTMENTS" +( "DEPARTMENT_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "DEPARTMENT_NAME" VARCHAR2(100) NOT NULL ENABLE, + "FLOOR_NO" VARCHAR2(20), + "STATUS" VARCHAR2(20) DEFAULT 'Active', + CHECK (STATUS IN ('Active','Inactive')) ENABLE, + PRIMARY KEY ("DEPARTMENT_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "DOCTOR_SPECIALTIES" +( "SPECIALTY_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "SPECIALTY_NAME" VARCHAR2(100) NOT NULL ENABLE, + "STATUS" VARCHAR2(20) DEFAULT 'Active', + CHECK (STATUS IN ('Active','Inactive')) ENABLE, + PRIMARY KEY ("SPECIALTY_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "MEDICINE_CATEGORIES" +( "CATEGORY_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "CATEGORY_NAME" VARCHAR2(100) NOT NULL ENABLE, + "STATUS" VARCHAR2(20) DEFAULT 'Active', + CHECK (STATUS IN ('Active','Inactive')) ENABLE, + PRIMARY KEY ("CATEGORY_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "APPOINTMENT_STATUSES" +( "STATUS_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "STATUS_NAME" VARCHAR2(50) NOT NULL ENABLE, + PRIMARY KEY ("STATUS_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "PATIENTS" +( "PATIENT_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "CIVIL_ID" VARCHAR2(30) NOT NULL ENABLE, + "FULL_NAME" VARCHAR2(150) NOT NULL ENABLE, + "GENDER" VARCHAR2(10), + "DATE_OF_BIRTH" DATE, + "MOBILE_NO" VARCHAR2(30) NOT NULL ENABLE, + "EMAIL" VARCHAR2(150), + "BLOOD_GROUP" VARCHAR2(5), + "ADDRESS" VARCHAR2(300), + "EMERGENCY_CONTACT_NAME" VARCHAR2(150), + "EMERGENCY_CONTACT_NO" VARCHAR2(30), + "CREATED_AT" DATE DEFAULT SYSDATE, + CHECK (GENDER IN ('Male','Female')) ENABLE, + CHECK (BLOOD_GROUP IN ('A+','A-','B+','B-','O+','O-','AB+','AB-')) ENABLE, + PRIMARY KEY ("PATIENT_ID") + USING INDEX ENABLE, + CONSTRAINT "UQ_PATIENTS_CIVIL_ID" UNIQUE ("CIVIL_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "DOCTORS" +( "DOCTOR_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "FULL_NAME" VARCHAR2(150) NOT NULL ENABLE, + "DEPARTMENT_ID" NUMBER NOT NULL ENABLE, + "SPECIALTY_ID" NUMBER NOT NULL ENABLE, + "MOBILE_NO" VARCHAR2(30), + "EMAIL" VARCHAR2(150), + "CONSULTATION_FEE" NUMBER(8,2), + "STATUS" VARCHAR2(20) DEFAULT 'Active', + CHECK (STATUS IN ('Active','Inactive')) ENABLE, + PRIMARY KEY ("DOCTOR_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "MEDICINES" +( "MEDICINE_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "MEDICINE_NAME" VARCHAR2(150) NOT NULL ENABLE, + "CATEGORY_ID" NUMBER NOT NULL ENABLE, + "UNIT" VARCHAR2(50), + "CURRENT_STOCK" NUMBER DEFAULT 0, + "REORDER_LEVEL" NUMBER DEFAULT 0, + "STATUS" VARCHAR2(20) DEFAULT 'Active', + CHECK (CURRENT_STOCK >= 0) ENABLE, + CHECK (STATUS IN ('Active','Inactive')) ENABLE, + PRIMARY KEY ("MEDICINE_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "ROOMS" +( "ROOM_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "ROOM_NO" VARCHAR2(20) NOT NULL ENABLE, + "ROOM_TYPE" VARCHAR2(30), + "DAILY_RATE" NUMBER(8,2), + "STATUS" VARCHAR2(20) DEFAULT 'Available', + CHECK (ROOM_TYPE IN ('General','Private','ICU')) ENABLE, + CHECK (STATUS IN ('Available','Occupied','Maintenance')) ENABLE, + PRIMARY KEY ("ROOM_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "APPOINTMENTS" +( "APPOINTMENT_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "PATIENT_ID" NUMBER NOT NULL ENABLE, + "DOCTOR_ID" NUMBER NOT NULL ENABLE, + "APPOINTMENT_DATE" DATE NOT NULL ENABLE, + "APPOINTMENT_TIME" VARCHAR2(20), + "STATUS_ID" NUMBER NOT NULL ENABLE, + "REASON_FOR_VISIT" VARCHAR2(300), + "CREATED_AT" DATE DEFAULT SYSDATE, + PRIMARY KEY ("APPOINTMENT_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "PATIENT_VISITS" +( "VISIT_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "APPOINTMENT_ID" NUMBER NOT NULL ENABLE, + "PATIENT_ID" NUMBER NOT NULL ENABLE, + "DOCTOR_ID" NUMBER NOT NULL ENABLE, + "VISIT_DATE" DATE DEFAULT SYSDATE, + "SYMPTOMS" VARCHAR2(500), + "DIAGNOSIS" VARCHAR2(500), + "NOTES" VARCHAR2(1000), + "FOLLOW_UP_DATE" DATE, + PRIMARY KEY ("VISIT_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "PRESCRIPTIONS" +( "PRESCRIPTION_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "VISIT_ID" NUMBER NOT NULL ENABLE, + "PATIENT_ID" NUMBER NOT NULL ENABLE, + "DOCTOR_ID" NUMBER NOT NULL ENABLE, + "PRESCRIPTION_DATE" DATE DEFAULT SYSDATE, + "NOTES" VARCHAR2(500), + PRIMARY KEY ("PRESCRIPTION_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "PRESCRIPTION_ITEMS" +( "PRESCRIPTION_ITEM_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "PRESCRIPTION_ID" NUMBER NOT NULL ENABLE, + "MEDICINE_ID" NUMBER NOT NULL ENABLE, + "DOSAGE" VARCHAR2(50), + "FREQUENCY" VARCHAR2(50), + "DURATION_DAYS" NUMBER, + "INSTRUCTIONS" VARCHAR2(200), + PRIMARY KEY ("PRESCRIPTION_ITEM_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "ADMISSIONS" +( "ADMISSION_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, + "PATIENT_ID" NUMBER NOT NULL ENABLE, + "DOCTOR_ID" NUMBER NOT NULL ENABLE, + "ROOM_ID" NUMBER NOT NULL ENABLE, + "ADMISSION_DATE" DATE DEFAULT SYSDATE, + "DISCHARGE_DATE" DATE, + "ADMISSION_REASON" VARCHAR2(300), + "STATUS" VARCHAR2(20) DEFAULT 'Admitted', + CHECK (STATUS IN ('Admitted','Discharged')) ENABLE, + PRIMARY KEY ("ADMISSION_ID") + USING INDEX ENABLE +) ; + +CREATE TABLE "HTMLDB_PLAN_TABLE" +( "STATEMENT_ID" VARCHAR2(30), + "PLAN_ID" NUMBER, + "TIMESTAMP" DATE, + "REMARKS" VARCHAR2(4000), + "OPERATION" VARCHAR2(30), + "OPTIONS" VARCHAR2(255), + "OBJECT_NODE" VARCHAR2(128), + "OBJECT_OWNER" VARCHAR2(128), + "OBJECT_NAME" VARCHAR2(128), + "OBJECT_ALIAS" VARCHAR2(261), + "OBJECT_INSTANCE" NUMBER(*,0), + "OBJECT_TYPE" VARCHAR2(128), + "OPTIMIZER" VARCHAR2(255), + "SEARCH_COLUMNS" NUMBER, + "ID" NUMBER(*,0), + "PARENT_ID" NUMBER(*,0), + "DEPTH" NUMBER(*,0), + "POSITION" NUMBER(*,0), + "COST" NUMBER(*,0), + "CARDINALITY" NUMBER(*,0), + "BYTES" NUMBER(*,0), + "OTHER_TAG" VARCHAR2(255), + "PARTITION_START" VARCHAR2(255), + "PARTITION_STOP" VARCHAR2(255), + "PARTITION_ID" NUMBER(*,0), + "OTHER" LONG, + "DISTRIBUTION" VARCHAR2(30), + "CPU_COST" NUMBER(*,0), + "IO_COST" NUMBER(*,0), + "TEMP_SPACE" NUMBER(*,0), + "ACCESS_PREDICATES" VARCHAR2(4000), + "FILTER_PREDICATES" VARCHAR2(4000), + "PROJECTION" VARCHAR2(4000), + "TIME" NUMBER(*,0), + "QBLOCK_NAME" VARCHAR2(128) +) ; + + +CREATE UNIQUE INDEX "SYS_C0014081" ON "PATIENTS" ("PATIENT_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014096" ON "MEDICINES" ("MEDICINE_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014116" ON "PATIENT_VISITS" ("VISIT_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014071" ON "MEDICINE_CATEGORIES" ("CATEGORY_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014067" ON "DOCTOR_SPECIALTIES" ("SPECIALTY_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014088" ON "DOCTORS" ("DOCTOR_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014108" ON "APPOINTMENTS" ("APPOINTMENT_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014102" ON "ROOMS" ("ROOM_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014139" ON "ADMISSIONS" ("ADMISSION_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014131" ON "PRESCRIPTION_ITEMS" ("PRESCRIPTION_ITEM_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014074" ON "APPOINTMENT_STATUSES" ("STATUS_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014063" ON "DEPARTMENTS" ("DEPARTMENT_ID") +; + +CREATE UNIQUE INDEX "UQ_PATIENTS_CIVIL_ID" ON "PATIENTS" ("CIVIL_ID") +; + +CREATE UNIQUE INDEX "SYS_C0014124" ON "PRESCRIPTIONS" ("PRESCRIPTION_ID") +; diff --git a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql new file mode 100644 index 00000000..e69de29b From 1248ea1f0d462c41da76b95edc59a4605776d82d Mon Sep 17 00:00:00 2001 From: Safa Almaamari Date: Thu, 23 Jul 2026 14:34:15 +0400 Subject: [PATCH 3/3] hospital application sql --- ...hospital_management_system_application.sql | 0 .../hospitalsystem/sample_data.sql | 187 ++++++++++++++++++ 2 files changed, 187 insertions(+) create mode 100644 src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospital_management_system_application.sql diff --git a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospital_management_system_application.sql b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/hospital_management_system_application.sql new file mode 100644 index 00000000..e69de29b diff --git a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql index e69de29b..05bafe50 100644 --- a/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql +++ b/src/main/java/org/example/fromsafaalmaamari/hospitalsystem/sample_data.sql @@ -0,0 +1,187 @@ +-- LOOKUP DATA + +--DEPARTMENTS +INSERT INTO DEPARTMENTS (DEPARTMENT_NAME, FLOOR_NO, STATUS) VALUES ('Cardiology', '3rd Floor', 'Active'); +INSERT INTO DEPARTMENTS (DEPARTMENT_NAME, FLOOR_NO, STATUS) VALUES ('Pediatrics', '2nd Floor', 'Active'); +INSERT INTO DEPARTMENTS (DEPARTMENT_NAME, FLOOR_NO, STATUS) VALUES ('Emergency', 'Ground Floor', 'Active'); +INSERT INTO DEPARTMENTS (DEPARTMENT_NAME, FLOOR_NO, STATUS) VALUES ('Orthopedics', '4th Floor', 'Active'); +INSERT INTO DEPARTMENTS (DEPARTMENT_NAME, FLOOR_NO, STATUS) VALUES ('General Medicine', '1st Floor', 'Active'); + +--DOCTOR_SPECIALTIES +INSERT INTO DOCTOR_SPECIALTIES (SPECIALTY_NAME, STATUS) VALUES ('Cardiologist', 'Active'); +INSERT INTO DOCTOR_SPECIALTIES (SPECIALTY_NAME, STATUS) VALUES ('Pediatrician', 'Active'); +INSERT INTO DOCTOR_SPECIALTIES (SPECIALTY_NAME, STATUS) VALUES ('Surgeon', 'Active'); +INSERT INTO DOCTOR_SPECIALTIES (SPECIALTY_NAME, STATUS) VALUES ('Orthopedic Specialist', 'Active'); +INSERT INTO DOCTOR_SPECIALTIES (SPECIALTY_NAME, STATUS) VALUES ('General Physician', 'Active'); + +--MEDICINE_CATEGORIES +INSERT INTO MEDICINE_CATEGORIES (CATEGORY_NAME, STATUS) VALUES ('Antibiotic', 'Active'); +INSERT INTO MEDICINE_CATEGORIES (CATEGORY_NAME, STATUS) VALUES ('Painkiller', 'Active'); +INSERT INTO MEDICINE_CATEGORIES (CATEGORY_NAME, STATUS) VALUES ('Diabetes', 'Active'); +INSERT INTO MEDICINE_CATEGORIES (CATEGORY_NAME, STATUS) VALUES ('Vitamin', 'Active'); +INSERT INTO MEDICINE_CATEGORIES (CATEGORY_NAME, STATUS) VALUES ('Cardiac', 'Active'); + +--APPOINTMENT_STATUSES +INSERT INTO APPOINTMENT_STATUSES (STATUS_NAME) VALUES ('Scheduled'); +INSERT INTO APPOINTMENT_STATUSES (STATUS_NAME) VALUES ('Completed'); +INSERT INTO APPOINTMENT_STATUSES (STATUS_NAME) VALUES ('Cancelled'); +INSERT INTO APPOINTMENT_STATUSES (STATUS_NAME) VALUES ('No Show'); + + +-- ROOMS + +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('101', 'General', 25, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('102', 'General', 25, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('103', 'General', 25, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('201', 'Private', 60, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('202', 'Private', 60, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('203', 'Private', 60, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('301', 'ICU', 150, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('302', 'ICU', 150, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('104', 'General', 25, 'Available'); +INSERT INTO ROOMS (ROOM_NO, ROOM_TYPE, DAILY_RATE, STATUS) VALUES ('204', 'Private', 60, 'Available'); + + +-- DOCTORS + +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Ahmed Al Balushi', 1, 1, '99001001', 'ahmed.balushi@alnoor.om', 25, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Fatma Al Habsi', 2, 2, '99001002', 'fatma.habsi@alnoor.om', 20, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Salim Al Rawahi', 3, 5, '99001003', 'salim.rawahi@alnoor.om', 18, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Mariam Al Siyabi', 4, 4, '99001004', 'mariam.siyabi@alnoor.om', 22, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Khalid Al Farsi', 5, 5, '99001005', 'khalid.farsi@alnoor.om', 15, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Layla Al Harthy', 1, 1, '99001006', 'layla.harthy@alnoor.om', 27, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Yousuf Al Kindi', 2, 2, '99001007', 'yousuf.kindi@alnoor.om', 19, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Noura Al Amri', 3, 3, '99001008', 'noura.amri@alnoor.om', 30, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Hamed Al Zadjali', 4, 4, '99001009', 'hamed.zadjali@alnoor.om', 21, 'Active'); +INSERT INTO DOCTORS (FULL_NAME, DEPARTMENT_ID, SPECIALTY_ID, MOBILE_NO, EMAIL, CONSULTATION_FEE, STATUS) VALUES ('Dr. Aisha Al Lawati', 5, 5, '99001010', 'aisha.lawati@alnoor.om', 16, 'Inactive'); + + + +-- MEDICINES + +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Amoxicillin 500mg', 1, 'Tablet', 200, 50, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Azithromycin 250mg', 1, 'Tablet', 15, 40, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Paracetamol 500mg', 2, 'Tablet', 500, 100, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Ibuprofen 400mg', 2, 'Tablet', 30, 60, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Diclofenac Gel', 2, 'Tube', 45, 20, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Metformin 500mg', 3, 'Tablet', 8, 50, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Insulin Glargine', 3, 'Injection', 25, 30, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Gliclazide 80mg', 3, 'Tablet', 90, 30, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Vitamin C 1000mg', 4, 'Tablet', 300, 50, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Vitamin D3', 4, 'Capsule', 10, 40, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Multivitamin Syrup', 4, 'Syrup', 60, 20, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Atorvastatin 20mg', 5, 'Tablet', 120, 40, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Aspirin 75mg', 5, 'Tablet', 18, 50, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Amlodipine 5mg', 5, 'Tablet', 75, 30, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Losartan 50mg', 5, 'Tablet', 5, 40, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Cough Syrup', 1, 'Syrup', 40, 25, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Ceftriaxone Injection', 1, 'Injection', 12, 20, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('ORS Sachet', 2, 'Sachet', 150, 50, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Naproxen 500mg', 2, 'Tablet', 55, 30, 'Active'); +INSERT INTO MEDICINES (MEDICINE_NAME, CATEGORY_ID, UNIT, CURRENT_STOCK, REORDER_LEVEL, STATUS) VALUES ('Metoprolol 50mg', 5, 'Tablet', 3, 30, 'Active'); + + +-- PATIENTS + +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000001', 'Sultan Al Maskari', 'Male', DATE '1985-03-12', '91100001', 'sultan1@mail.com', 'O+', 'Muscat, Al Khuwair', 'Fahad Al Maskari', '91100011'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000002', 'Maryam Al Balushi', 'Female', DATE '1990-07-22', '91100002', 'maryam2@mail.com', 'A+', 'Muscat, Ruwi', 'Yousuf Al Balushi', '91100012'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000003', 'Ali Al Rashdi', 'Male', DATE '1978-11-05', '91100003', 'ali3@mail.com', 'B+', 'Seeb', 'Huda Al Rashdi', '91100013'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000004', 'Huda Al Kindi', 'Female', DATE '1995-01-18', '91100004', 'huda4@mail.com', 'AB+', 'Bausher', 'Salim Al Kindi', '91100014'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000005', 'Said Al Harthy', 'Male', DATE '1982-06-30', '91100005', 'said5@mail.com', 'O-', 'Al Amerat', 'Aisha Al Harthy', '91100015'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000006', 'Aisha Al Farsi', 'Female', DATE '2001-09-14', '91100006', 'aisha6@mail.com', 'A-', 'Muttrah', 'Khalid Al Farsi', '91100016'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000007', 'Nasser Al Amri', 'Male', DATE '1970-02-25', '91100007', 'nasser7@mail.com', 'B-', 'Qurum', 'Salma Al Amri', '91100017'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000008', 'Salma Al Habsi', 'Female', DATE '1998-12-02', '91100008', 'salma8@mail.com', 'AB-', 'Al Khoud', 'Rashid Al Habsi', '91100018'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000009', 'Rashid Al Zadjali', 'Male', DATE '1988-04-09', '91100009', 'rashid9@mail.com', 'O+', 'Bidbid', 'Noura Al Zadjali', '91100019'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000010', 'Noura Al Lawati', 'Female', DATE '1992-08-16', '91100010', 'noura10@mail.com', 'A+', 'Barka', 'Ahmed Al Lawati', '91100020'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000011', 'Fahad Al Siyabi', 'Male', DATE '1975-10-11', '91100021', 'fahad11@mail.com', 'B+', 'Nizwa', 'Layla Al Siyabi', '91100031'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000012', 'Layla Al Rawahi', 'Female', DATE '2005-05-05', '91100022', 'layla12@mail.com', 'O+', 'Sohar', 'Said Al Rawahi', '91100032'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000013', 'Khalid Al Balushi', 'Male', DATE '1965-01-01', '91100023', 'khalid13@mail.com', 'A+', 'Sur', 'Maryam Al Balushi', '91100033'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000014', 'Zainab Al Kindi', 'Female', DATE '1999-03-27', '91100024', 'zainab14@mail.com', 'B+', 'Rustaq', 'Ali Al Kindi', '91100034'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000015', 'Yousuf Al Harthy', 'Male', DATE '1983-07-19', '91100025', 'yousuf15@mail.com', 'AB+', 'Ibri', 'Huda Al Harthy', '91100035'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000016', 'Amal Al Farsi', 'Female', DATE '1996-11-30', '91100026', 'amal16@mail.com', 'O-', 'Salalah', 'Nasser Al Farsi', '91100036'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000017', 'Talal Al Amri', 'Male', DATE '1980-02-14', '91100027', 'talal17@mail.com', 'A-', 'Duqm', 'Salma Al Amri', '91100037'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000018', 'Sara Al Habsi', 'Female', DATE '2000-06-08', '91100028', 'sara18@mail.com', 'B-', 'Al Buraimi', 'Rashid Al Habsi', '91100038'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000019', 'Hamad Al Zadjali', 'Male', DATE '1973-09-21', '91100029', 'hamad19@mail.com', 'AB-', 'Ibra', 'Noura Al Zadjali', '91100039'); +INSERT INTO PATIENTS (CIVIL_ID, FULL_NAME, GENDER, DATE_OF_BIRTH, MOBILE_NO, EMAIL, BLOOD_GROUP, ADDRESS, EMERGENCY_CONTACT_NAME, EMERGENCY_CONTACT_NO) VALUES ('1000020', 'Reem Al Lawati', 'Female', DATE '1993-12-25', '91100030', 'reem20@mail.com', 'O+', 'Nizwa', 'Ahmed Al Lawati', '91100040'); + + +-- APPOINTMENTS + +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (1, 1, TRUNC(SYSDATE) - 20, '09:00', 2, 'Chest pain'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (2, 2, TRUNC(SYSDATE) - 18, '10:00', 2, 'Child fever'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (3, 3, TRUNC(SYSDATE) - 16, '11:00', 2, 'Knee injury'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (4, 4, TRUNC(SYSDATE) - 15, '09:30', 2, 'Back pain'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (5, 5, TRUNC(SYSDATE) - 14, '13:00', 2, 'General checkup'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (6, 6, TRUNC(SYSDATE) - 12, '09:00', 2, 'Palpitations'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (7, 7, TRUNC(SYSDATE) - 11, '10:30', 2, 'Vaccination'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (8, 8, TRUNC(SYSDATE) - 10, '14:00', 2, 'Minor surgery follow-up'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (9, 9, TRUNC(SYSDATE) - 9, '09:00', 2, 'Fracture check'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (10, 1, TRUNC(SYSDATE) - 8, '11:00', 2, 'High blood pressure'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (11, 2, TRUNC(SYSDATE) - 7, '09:00', 3, 'Child cough'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (12, 3, TRUNC(SYSDATE) - 6, '10:00', 4, 'Sports injury'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (13, 4, TRUNC(SYSDATE) - 5, '09:30', 2, 'Joint pain'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (14, 5, TRUNC(SYSDATE) - 4, '13:30', 2, 'Fatigue'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (15, 6, TRUNC(SYSDATE) - 3, '09:00', 2, 'Irregular heartbeat'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (16, 7, TRUNC(SYSDATE) - 2, '10:00', 2, 'Growth checkup'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (17, 8, TRUNC(SYSDATE) - 1, '14:30', 2, 'Post-op review'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (18, 9, TRUNC(SYSDATE), '09:00', 1, 'Wrist pain'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (19, 1, TRUNC(SYSDATE), '11:00', 1, 'Chest tightness'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (20, 2, TRUNC(SYSDATE), '15:00', 1, 'Fever'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (1, 3, TRUNC(SYSDATE) + 1, '09:00', 1, 'Follow-up'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (2, 4, TRUNC(SYSDATE) + 2, '10:00', 1, 'Back checkup'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (3, 5, TRUNC(SYSDATE) + 3, '11:30', 1, 'Routine checkup'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (4, 6, TRUNC(SYSDATE) + 4, '09:00', 1, 'Heart screening'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (5, 7, TRUNC(SYSDATE) + 5, '13:00', 1, 'Child vaccination'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (6, 8, TRUNC(SYSDATE) + 6, '14:00', 1, 'Surgery consult'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (7, 9, TRUNC(SYSDATE) + 7, '09:30', 1, 'Ankle pain'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (8, 1, TRUNC(SYSDATE) + 8, '10:00', 1, 'Cardiac review'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (9, 2, TRUNC(SYSDATE) + 9, '11:00', 1, 'Child checkup'); +INSERT INTO APPOINTMENTS (PATIENT_ID, DOCTOR_ID, APPOINTMENT_DATE, APPOINTMENT_TIME, STATUS_ID, REASON_FOR_VISIT) VALUES (10, 3, TRUNC(SYSDATE) + 10, '12:00', 1, 'Ankle follow-up'); + + +-- PATIENT_VISITS + +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (1, 1, 1, TRUNC(SYSDATE) - 20, 'Chest pain, shortness of breath', 'Mild angina', 'Advised rest and follow-up ECG', TRUNC(SYSDATE) + 10); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (2, 2, 2, TRUNC(SYSDATE) - 18, 'Fever, cough', 'Viral infection', 'Plenty of fluids, rest', TRUNC(SYSDATE) - 11); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (3, 3, 3, TRUNC(SYSDATE) - 16, 'Knee swelling', 'Ligament strain', 'Physiotherapy recommended', TRUNC(SYSDATE) - 2); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (4, 4, 4, TRUNC(SYSDATE) - 15, 'Lower back pain', 'Muscle spasm', 'Prescribed painkillers', NULL); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (5, 5, 5, TRUNC(SYSDATE) - 14, 'General fatigue', 'Vitamin D deficiency', 'Vitamin supplements advised', TRUNC(SYSDATE) + 20); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (6, 6, 6, TRUNC(SYSDATE) - 12, 'Heart palpitations', 'Mild arrhythmia', 'ECG monitoring advised', TRUNC(SYSDATE) + 15); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (7, 7, 7, TRUNC(SYSDATE) - 11, 'Routine vaccination', 'Healthy', 'No issues found', NULL); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (8, 8, 8, TRUNC(SYSDATE) - 10, 'Post-surgery pain', 'Healing well', 'Continue wound care', TRUNC(SYSDATE) - 3); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (9, 9, 9, TRUNC(SYSDATE) - 9, 'Wrist swelling', 'Hairline fracture', 'Cast applied for 4 weeks', TRUNC(SYSDATE) + 19); +INSERT INTO PATIENT_VISITS (APPOINTMENT_ID, PATIENT_ID, DOCTOR_ID, VISIT_DATE, SYMPTOMS, DIAGNOSIS, NOTES, FOLLOW_UP_DATE) VALUES (10, 10, 1, TRUNC(SYSDATE) - 8, 'High blood pressure reading', 'Hypertension', 'Started on medication', TRUNC(SYSDATE) + 22); + +--PRESCRIPTIONS +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (1, 1, 1, TRUNC(SYSDATE) - 20, 'Take with food'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (2, 2, 2, TRUNC(SYSDATE) - 18, 'Complete full course'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (3, 3, 3, TRUNC(SYSDATE) - 16, 'Apply twice daily'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (4, 4, 4, TRUNC(SYSDATE) - 15, 'For pain relief'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (5, 5, 5, TRUNC(SYSDATE) - 14, 'Daily supplement'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (6, 6, 6, TRUNC(SYSDATE) - 12, 'Monitor heart rate'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (7, 7, 7, TRUNC(SYSDATE) - 11, 'No medication needed'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (8, 8, 8, TRUNC(SYSDATE) - 10, 'Continue antibiotics'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (9, 9, 9, TRUNC(SYSDATE) - 9, 'Pain management'); +INSERT INTO PRESCRIPTIONS (VISIT_ID, PATIENT_ID, DOCTOR_ID, PRESCRIPTION_DATE, NOTES) VALUES (10, 10, 1, TRUNC(SYSDATE) - 8, 'Blood pressure control'); + + +--PRESCRIPTION_ITEMS +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (1, 13, '75mg', 'Once daily', 30, 'After food'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (2, 1, '500mg', 'Twice daily', 7, 'After food'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (2, 3, '500mg', 'As needed', 5, 'For fever'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (3, 5, 'Apply thin layer', 'Twice daily', 10, 'On affected area'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (4, 4, '400mg', 'Three times daily', 5, 'After food'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (5, 10, '1 capsule', 'Once daily', 60, 'With breakfast'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (6, 15, '5mg', 'Once daily', 30, 'Morning'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (8, 17, '1g', 'Once daily', 5, 'Injection at clinic'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (9, 3, '500mg', 'As needed', 7, 'For pain'); +INSERT INTO PRESCRIPTION_ITEMS (PRESCRIPTION_ID, MEDICINE_ID, DOSAGE, FREQUENCY, DURATION_DAYS, INSTRUCTIONS) VALUES (10, 20, '50mg', 'Once daily', 30, 'Evening'); + + +-- ADMISSIONS +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (1, 1, 7, TRUNC(SYSDATE) - 3, NULL, 'Cardiac observation', 'Admitted'); +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (3, 3, 1, TRUNC(SYSDATE) - 2, NULL, 'Post-surgery recovery', 'Admitted'); +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (9, 9, 4, TRUNC(SYSDATE) - 1, NULL, 'Fracture treatment', 'Admitted'); +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (5, 5, 2, TRUNC(SYSDATE) - 10, TRUNC(SYSDATE) - 7, 'Observation', 'Discharged'); +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (7, 8, 3, TRUNC(SYSDATE) - 15, TRUNC(SYSDATE) - 12, 'Minor surgery', 'Discharged'); +INSERT INTO ADMISSIONS (PATIENT_ID, DOCTOR_ID, ROOM_ID, ADMISSION_DATE, DISCHARGE_DATE, ADMISSION_REASON, STATUS) VALUES (11, 4, 5, TRUNC(SYSDATE) - 20, TRUNC(SYSDATE) - 18, 'Back injury monitoring', 'Discharged');