Sobes.tech
Middle

Faut-il une table de liaison entre les utilisateurs et les codes promo ?

sobes.tech IA

Réponse de l'IA

Une table de liaison entre les utilisateurs et les codes promo est nécessaire si une relation "plusieurs à plusieurs" existe entre eux. Par exemple, si un utilisateur peut utiliser plusieurs codes promo, et qu’un code promo peut être utilisé par plusieurs utilisateurs.

Si chaque code promo est lié uniquement à un utilisateur, ou inversement, une table de liaison n’est pas nécessaire — il suffit d’ajouter une clé étrangère dans l’une des tables.

Exemple de table de liaison :

CREATE TABLE user_promo_codes (
  user_id INT,
  promo_code_id INT,
  used_at TIMESTAMP,
  PRIMARY KEY (user_id, promo_code_id),
  FOREIGN KEY (user_id) REFERENCES users(id),
  FOREIGN KEY (promo_code_id) REFERENCES promo_codes(id)
);