Files
G4G0-1/Semester 1/Database Systems/Assignment/postgre Compatible.md
2024-01-16 13:48:46 +00:00

1.4 KiB

  1. Hospital Table
CREATE TABLE hospital (
	hospital_id CHAR(3) CONSTRAINT hID_pk PRIMARY KEY,
	hospital_name VARCHAR(30),
	city VARCHAR(15),
	postcode VARCHAR(8) CONSTRAINT postcode_unique UNIQUE
);
  1. Transplant_Unit Table
CREATE TABLE transplant_unit (
	unit_id CHAR(4) CONSTRAINT uID_pk PRIMARY KEY,
	hospital_id CHAR(3),
	specialisation VARCHAR(20),

	CONSTRAINT hID_fk FOREIGN KEY ( hospital_id ) REFERENCES hospital( hospital_id )
);
  1. Organ Table:
CREATE TABLE organ (
	organ_id CHAR(3) CONSTRAINT oID_pk PRIMARY KEY,
	organ_type VARCHAR(15) 
);
  1. Patient Table:
CREATE TABLE patient (
	patient_id CHAR(3) CONSTRAINT pID_pk PRIMARY KEY,
	patient_name VARCHAR(10),
	age INTEGER
);
  1. Donor Table:
CREATE TABLE donor (
	donor_id CHAR(3) CONSTRAINT dID_pk PRIMARY KEY,
	donor_name VARCHAR(10),
	age INTEGER
);
  1. Operation Table
CREATE TABLE operation (
	operation_id CHAR(3),
	organ_id CHAR(3),
	unit_id CHAR(4),
	patient_id CHAR(3),
	donor_id CHAR(3),
	
	CONSTRAINT comp_op_key PRIMARY KEY ( operation_id, organ_id ),
	CONSTRAINT oID_fk FOREIGN KEY ( organ_id ) REFERENCES organ( organ_id ),
	CONSTRAINT uID_fk FOREIGN KEY ( unit_id ) REFERENCES transplant_unit( unit_id ),
	CONSTRAINT pID_fk FOREIGN KEY ( patient_id ) REFERENCES patient( patient_id ),
	CONSTRAINT dID_fk FOREIGN KEY ( donor_id ) REFERENCES donor( donor_id )
);