Sobes.tech
Middle

Kas on vajalik ühendustabel kasutajate ja promo-koodide vahel?

sobes.tech AI

Vastus AI-lt

Kui kasutajate ja promo-koodide vahel on "palju-ühele" suhe, on vaja ühendustabelit. Näiteks, kui üks kasutaja võib kasutada mitut promo-koodi ja üks promo-kood võib olla kasutusel mitme kasutaja poolt.

Kui aga iga promo-kood on seotud ainult ühe kasutajaga või vastupidi, siis ühendustabelit ei ole vaja — piisab välise võtme lisamisest ühte tabelisse.

Ühendustabeli näide:

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)
);