J'ai SQL Server 2008 R2 et je souhaite définir une colonne unique.
Il semble y avoir deux façons de procéder: "index unique" et "contrainte unique". Ils ne sont pas très différents de ce que je comprends, bien qu'une contrainte unique soit recommandée par la plupart, car vous obtenez également un index automatiquement.
Comment créer une contrainte unique?
ALTER TABLE Customer ADD CONSTRAINT U_Name UNIQUE(Name)
Existe-t-il un moyen de créer une contrainte unique via SQL Server Management Studio?
la source
Définissez la colonne comme unique dans SQL Server à partir de l'interface graphique:
Ils vous font vraiment courir autour de la grange pour le faire avec l'interface graphique:
Assurez-vous que votre colonne ne viole pas la contrainte d'unicité avant de commencer.
Ou définissez la colonne comme unique dans la fenêtre Requête SQL:
Les modifications prennent effet immédiatement:
la source
Voici une autre façon d'utiliser l'interface graphique qui fait exactement ce que fait votre script même s'il passe par des index (pas des contraintes) dans l'explorateur d'objets.
la source
Une chose qui n'est pas clairement couverte est que Microsoft SQL crée en arrière-plan un index unique pour la contrainte ajoutée
comme vous pouvez le voir, il y a une nouvelle contrainte et un nouvel index U_Name
la source