Senior
Jaké tabulky a pole jsou potřeba v databázi PostgreSQL pro tento messenger?
sobes.tech AI
Odpověď od AI
Pro messenger v PostgreSQL jsou obvykle potřeba následující tabulky a pole:
- users — uchovává informace o uživatelích:
id SERIAL PRIMARY KEY,
username VARCHAR UNIQUE NOT NULL,
email VARCHAR UNIQUE NOT NULL,
hashed_password TEXT NOT NULL,
created_at TIMESTAMP DEFAULT now()
- conversations — chaty nebo dialogy:
id SERIAL PRIMARY KEY,
title VARCHAR,
created_at TIMESTAMP DEFAULT now()
- conversation_members — vztah mezi uživateli a chaty:
id SERIAL PRIMARY KEY,
conversation_id INT REFERENCES conversations(id),
user_id INT REFERENCES users(id),
joined_at TIMESTAMP DEFAULT now()
- messages — zprávy v chatech:
id SERIAL PRIMARY KEY,
conversation_id INT REFERENCES conversations(id),
sender_id INT REFERENCES users(id),
content TEXT NOT NULL,
sent_at TIMESTAMP DEFAULT now(),
edited_at TIMESTAMP
Dále lze přidat tabulky pro přílohy, stavy zpráv apod., ale tyto základní zajišťují základní funkčnost messengeru.