Como fazer a coluna "sem duplicatas" no SQL Server 2008?
-
22-09-2019 - |
Pergunta
Eu tenho uma tabela simples no meu banco de dados SQL Server. Esta tabela contém duas colunas: ID int, Name nvarchar(50)
. o ID
A coluna é a chave primária para minha tabela.
Eu quero o "Name
"Coluna para ser"(No Duplicates)
", Como no Microsoft Access, mas esta coluna não é a coluna principal. Como eu poderia fazer isso?
Solução
Adicione a restrição única Para essa coluna:
ALTER TABLE Foo ADD CONSTRAINT UQ_Name UNIQUE (Name)
Para adicioná -lo através da interface do usuário do SQL Management Studio:
- Open SQL Server Management Studio.
- Expandir o Mesas Pasta do banco de dados em que você deseja criar a restrição.
- Clique com o botão direito do mouse na tabela onde você deseja adicionar a restrição e clicar Projeto.
- No designer de tabela, clique em Índices/chaves.
- Clique Adicionar.
- Escolher Chave única na lista suspensa de tipo.
Para lidar com uma situação em que ocorre uma violação única de restrição, consulte Erro 2601.
Outras dicas
Isso também pode ser feito de outra maneira com a GUI do SSMS, se você preferir:
- Clique com o botão direito do mouse "índices" sob sua tabela no SSMS Solution Explorer e clique em "Novo índice ..." (eu sei que você está procurando criar um controntainto, não um índice, mas é exatamente isso
ADD CONSTRAINT
O script SQL faz.
- Dê um nome no novo índice (por exemplo, "uq_myuniqueColumn"), verifique "exclusivo" e clique em "Adicionar ..."
- Verifique sua coluna na próxima janela
- Clique em OK nas duas janelas
Você está procurando o Restrição única.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow