Bonjour,
Pour éviter des doublons, puis-je utiliser une contrainte d'unicité sur 6 colonnes sans que cela ne pose un problème ?
Merci.
Bonjour,
Pour éviter des doublons, puis-je utiliser une contrainte d'unicité sur 6 colonnes sans que cela ne pose un problème ?
Merci.
6 n'est pas un problème, mais concrètement une contrante d'unicité est généralement associée à un index unique cependant contrainte d'uncité est différent d'index unique.
Comme il existe des restrictions sur la création des index, si les 6 colonnes sont de type varchar(255) alors il est probable que ça ne fonctionne pas, la limite dépendant probablement du SGBD utilisé.
Quel est le SGBD, quel est le typage des 6 colonnes en questions, qu'as tu observé lors de la création de la contrainte ?
Bonsoir,
j'utilise Mysql et mes colonnes sont de type :
int, date, tinyint, int, char, int
pour l'instant, je m'interroge seulement pour savoir si ça se pratique ou non...
De manière générale, on pose toutes les contraintes qui sont fonctionnellement nécessaires.
Dans ce cas particulier, MySQL ne distingue pas les notions de clé et d'index, donc effectivement ça se traduit par un index UNIQUE sur ces six colonnes.
Merci.
Donc, je peux faire :
UNIQUE idx_six_col (col1, col2, col3, col4, col5, col6) ?
Partager