сделал DDL для пет проекта

This commit is contained in:
mnoskov
2026-03-17 17:29:45 +03:00
parent 3f307b95ac
commit 69d49c501d
18 changed files with 45 additions and 0 deletions
@@ -0,0 +1,45 @@
--DROP TABLE IF EXISTS users;
CREATE TABLE users (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
name varchar(100) NOT NULL,
age SMALLINT,
email varchar(100),
registration_date timestamptz NOT NULL
);
--DROP TABLE IF EXISTS courses;
CREATE TABLE courses (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
title varchar(150) NOT NULL,
category varchar(50),
created_at timestamptz NOT NULL
);
--DROP TABLE IF EXISTS lessons;
CREATE TABLE lessons (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
course_id bigint NOT NULL,
title varchar(150) NOT NULL,
duration_min SMALLINT NOT NULL,
FOREIGN KEY (course_id) REFERENCES courses(id)
);
--DROP TABLE IF EXISTS enrollments;
CREATE TABLE enrollments (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
user_id bigint NOT NULL,
course_id bigint NOT NULL,
enrolled_at timestamptz NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (course_id) REFERENCES courses(id)
);
--DROP TABLE IF EXISTS lesson_views;
CREATE TABLE lesson_views (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
user_id bigint NOT NULL,
lesson_id bigint NOT NULL,
viewed_at timestamptz NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (lesson_id) REFERENCES lessons(id)
);