Senior
Comment ajouter une contrainte d'unicité dans PostgreSQL sur la combinaison de deux colonnes, où les valeurs individuellement peuvent se répéter, mais pas les paires?
sobes.tech IA
Réponse de l'IA
Dans PostgreSQL, pour garantir l'unicité de la combinaison des valeurs de deux colonnes, une contrainte UNIQUE est utilisée sur cette paire de colonnes. Cela garantit que chaque paire de valeurs sera unique, même si les valeurs individuelles dans les colonnes peuvent se répéter.
Exemple de requête SQL :
ALTER TABLE votre_nom_de_table
ADD CONSTRAINT unique_col1_col2 UNIQUE (colonne1, colonne2);
Si la table est créée de zéro, la contrainte peut être spécifiée immédiatement :
CREATE TABLE votre_nom_de_table (
id SERIAL PRIMARY KEY,
colonne1 TYPE,
colonne2 TYPE,
-- autres colonnes
CONSTRAINT unique_col1_col2 UNIQUE (colonne1, colonne2)
);
Ainsi, la base de données ne permettra pas d'insérer des lignes avec une combinaison de valeurs répétée dans ces deux colonnes.