Changes between Version 3 and Version 4 of LogicalAndPhysicalDesign
- Timestamp:
- 12/10/25 00:21:01 (3 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
LogicalAndPhysicalDesign
v3 v4 6 6 7 7 CREATE TABLE User ( 8 user_id BIGSERIALPRIMARY KEY,8 user_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 9 9 username VARCHAR(50) NOT NULL UNIQUE, 10 10 email VARCHAR(255) NOT NULL UNIQUE, … … 18 18 19 19 CREATE TABLE VetClinic ( 20 clinic_id BIG SERIALPRIMARY KEY,20 clinic_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 21 21 name VARCHAR(100) NOT NULL, 22 22 address VARCHAR(200), … … 28 28 29 29 CREATE TABLE Animal ( 30 animal_id BIG SERIALPRIMARY KEY,30 animal_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 31 31 owner_id BIGINT NOT NULL, 32 32 name VARCHAR(80) NOT NULL, … … 40 40 CONSTRAINT fk_animal_owner 41 41 FOREIGN KEY (owner_id) 42 REFERENCES "User"(user_id)42 REFERENCES User(user_id) 43 43 ON DELETE CASCADE 44 44 ); … … 46 46 47 47 CREATE TABLE Listing ( 48 listing_id BIG SERIALPRIMARY KEY,48 listing_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 49 49 user_id BIGINT NOT NULL, 50 50 animal_id BIGINT NOT NULL, … … 55 55 CONSTRAINT fk_listing_user 56 56 FOREIGN KEY (user_id) 57 REFERENCES "User"(user_id)57 REFERENCES User(user_id) 58 58 ON DELETE CASCADE, 59 59 CONSTRAINT fk_listing_animal 60 60 FOREIGN KEY (animal_id) 61 REFERENCES "Animal"(animal_id)61 REFERENCES Animal(animal_id) 62 62 ON DELETE CASCADE 63 63 ); 64 64 65 65 CREATE TABLE Appointment ( 66 appointment_id BIG SERIALPRIMARY KEY,66 appointment_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 67 67 animal_id BIGINT NOT NULL, 68 68 clinic_id BIGINT NOT NULL, … … 72 72 CONSTRAINT fk_appt_animal 73 73 FOREIGN KEY (animal_id) 74 REFERENCES "Animal"(animal_id)74 REFERENCES Animal(animal_id) 75 75 ON DELETE CASCADE, 76 76 CONSTRAINT fk_appt_clinic 77 77 FOREIGN KEY (clinic_id) 78 REFERENCES "VetClinic"(clinic_id)78 REFERENCES VetClinic(clinic_id) 79 79 ON DELETE CASCADE 80 80 ); … … 82 82 83 83 CREATE TABLE HealthRecord ( 84 healthrecord_id BIG SERIALPRIMARY KEY,84 healthrecord_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 85 85 animal_id BIGINT NOT NULL, 86 86 appointment_id BIGINT, … … 91 91 CONSTRAINT fk_hr_animal 92 92 FOREIGN KEY (animal_id) 93 REFERENCES "Animal"(animal_id)93 REFERENCES Animal(animal_id) 94 94 ON DELETE CASCADE, 95 95 CONSTRAINT fk_hr_appt 96 96 FOREIGN KEY (appointment_id) 97 REFERENCES "Appointment"(appointment_id)97 REFERENCES Appointment(appointment_id) 98 98 ON DELETE SET NULL, 99 99 CONSTRAINT fk_hr_clinic 100 100 FOREIGN KEY (clinic_id) 101 REFERENCES "VetClinic"(clinic_id)101 REFERENCES VetClinic(clinic_id) 102 102 ON DELETE SET NULL 103 103 ); 104 104 105 105 CREATE TABLE Notification ( 106 notification_id BIG SERIALPRIMARY KEY,106 notification_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 107 107 user_id BIGINT NOT NULL, 108 108 message TEXT NOT NULL, … … 112 112 CONSTRAINT fk_notification_user 113 113 FOREIGN KEY (user_id) 114 REFERENCES "User"(user_id)114 REFERENCES User(user_id) 115 115 ON DELETE CASCADE 116 116 ); … … 118 118 119 119 CREATE TABLE Review ( 120 review_id BIG SERIALPRIMARY KEY,120 review_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, 121 121 reviewer_id BIGINT NOT NULL, 122 122 target_user_id BIGINT, … … 127 127 CONSTRAINT fk_review_reviewer 128 128 FOREIGN KEY (reviewer_id) 129 REFERENCES "User"(user_id)129 REFERENCES User(user_id) 130 130 ON DELETE CASCADE, 131 131 CONSTRAINT fk_review_target_user 132 132 FOREIGN KEY (target_user_id) 133 REFERENCES "User"(user_id)133 REFERENCES User(user_id) 134 134 ON DELETE CASCADE, 135 135 CONSTRAINT fk_review_target_clinic 136 136 FOREIGN KEY (target_clinic_id) 137 REFERENCES "VetClinic"(clinic_id)137 REFERENCES VetClinic(clinic_id) 138 138 ON DELETE CASCADE, 139 139 CONSTRAINT review_must_have_target
