[postgresql] createDB
Viewer
- CREATE TABLE student_groups(
- group_number SERIAL PRIMARY KEY,
- faculty VARCHAR(30) NOT NULL);
- CREATE TABLE students(
- recordBook_number SERIAL PRIMARY KEY,
- lastname VARCHAR(30) NOT NULL,
- birthYear INTEGER CHECK(birthYear > 1800 AND birthYear < date_part('year', CURRENT_DATE)),
- receiptYear INTEGER CHECK(receiptYear > birthYear AND (receiptYear - birthYear) >= 18 AND receiptYear < date_part('year', CURRENT_DATE)),
- group_number INTEGER REFERENCES student_groups(group_number) ON DELETE SET NULL ON UPDATE CASCADE);
- CREATE TABLE exam(
- semester INTEGER,
- subject VARCHAR(30),
- recordBook_number INTEGER REFERENCES students(recordBook_number) ON DELETE CASCADE ON UPDATE CASCADE,
- mark INTEGER NOT NULL CHECK(mark >= 0 AND mark <= 10),
- PRIMARY KEY(semester, subject, recordBook_number));
Editor
You can edit this paste and save as new: