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
44 lines
1.2 KiB
-- Пользователи
|
|
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
|
|
);
|