You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.2 KiB

7 months ago
-- Пользователи
CREATE TABLE users (
user_id SERIAL PRIMARY KEY,
username VARCHAR(255) UNIQUE NOT NULL,
email VARCHAR(255) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
full_name VARCHAR(255),
date_joined TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Посты
CREATE TABLE posts (
post_id SERIAL PRIMARY KEY,
user_id INT REFERENCES users(user_id),
content TEXT NOT NULL,
post_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Комментарии
CREATE TABLE comments (
comment_id SERIAL PRIMARY KEY,
user_id INT REFERENCES users(user_id),
post_id INT REFERENCES posts(post_id),
content TEXT NOT NULL,
comment_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Лайки
CREATE TABLE likes (
like_id SERIAL PRIMARY KEY,
user_id INT REFERENCES users(user_id),
post_id INT REFERENCES posts(post_id),
comment_id INT REFERENCES comments(comment_id),
like_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Друзья
CREATE TABLE friends (
friendship_id SERIAL PRIMARY KEY,
user1_id INT REFERENCES users(user_id),
user2_id INT REFERENCES users(user_id),
friendship_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Powered by TurnKey Linux.