Sobes.tech
Senior

Quelles tables et champs sont nécessaires dans la base de données PostgreSQL pour ce messager?

sobes.tech IA

Réponse de l'IA

Pour un messager dans PostgreSQL, les tables et champs suivants sont généralement nécessaires:

  1. users — stocke les informations sur les utilisateurs:
id SERIAL PRIMARY KEY,
username VARCHAR UNIQUE NOT NULL,
email VARCHAR UNIQUE NOT NULL,
hashed_password TEXT NOT NULL,
created_at TIMESTAMP DEFAULT now()
  1. conversations — chats ou dialogues:
id SERIAL PRIMARY KEY,
title VARCHAR,
created_at TIMESTAMP DEFAULT now()
  1. conversation_members — relation entre utilisateurs et chats:
id SERIAL PRIMARY KEY,
conversation_id INT REFERENCES conversations(id),
user_id INT REFERENCES users(id),
joined_at TIMESTAMP DEFAULT now()
  1. messages — messages dans les chats:
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

De plus, il est possible d'ajouter des tables pour les pièces jointes, les statuts des messages, etc., mais ces principales assurent la fonctionnalité de base du messager.