Restricións únicas en Microsoft SQL Server

As vantaxes do uso de restricións únicas sobre restriccións principais da chave

Ao crear unha restrición ÚNICA, os administradores de SQL Server especifican que unha columna pode non conter valores duplicados. Cando crea unha nova restrición ÚNICA, SQL Server verifica a columna en cuestión para determinar se contén valores duplicados. Se a táboa contén duplicados preexistentes, o comando de creación de restrición falla. Do mesmo xeito, unha vez que teña unha restrición ÚNICA nunha columna, os intentos de engadir ou modificar datos que provocan a existencia de duplicados tamén fallan.

Por que usar restricións únicas

Unha limitación única e unha clave primaria impoñen a singularidade, pero hai momentos nos que unha restrición ÚNICA é a mellor opción.

Creando unha restrición ÚNICA

Hai moitas maneiras de crear unha restrición ÚNICA no servidor SQL. Se desexa usar Transact-SQL para engadir unha restrición ÚNICA nunha táboa existente, pode usar a instrución ALTER TABLE, como se ilustra a continuación:

ALTER TABLE AÑADIR CONSTRAINT UNIQUE ()

Se prefire interactuar con SQL Server usando ferramentas GUI, tamén pode crear unha restricción ÚNICA usando SQL Server Management Studio . Vexa como:

  1. Abre SQL Server Management Studio .
  2. Expande o cartafol das táboas da base de datos onde desexa crear a restrición.
  3. Fai clic co botón dereito na táboa onde desexa engadir a restrición e faga clic en Deseño .
  4. No menú Deseño de mesa, faga clic en Índices / Teclas .
  5. No diálogo Índices / chaves, faga clic en Engadir .
  6. Escolla a chave única na lista despregable Tipo .

Restricións únicas contra índices únicos

Houbo algunha confusión sobre a diferenza entre unha restrición ÚNICA e un índice ÚNICO. Mentres pode usar diferentes comandos de Transact-SQL para crealos (ALTER TABLE ... ADD CONSTRAINT para restricións e CREATE UNIQUE INDEX para índices), teñen o mesmo efecto, na maior parte. De feito, cando crea unha restrición ÚNICA, realmente crea un índice ÚNICO na táboa. É importante notar, con todo, que hai varias diferenzas: