Veja como adicionar UNIQUE KEY para que uma coluna não aceite valores duplicados, deixando-a com valores únicos, que nunca se repetem.
Faça sempre backup antes de alterar a estrutura de uma tabela. O aconselhável é que, além de backup, testes sejam feitos em ambientes isolados, fora da produção.
Se você está se perguntando o que é uma unique key, ou chave única, saiba que é uma restrição em um banco de dados que garante que os valores em uma coluna sejam únicos em todas as linhas da tabela. Isso significa que não pode haver dois ou mais registros na tabela com o mesmo valor na coluna ou conjunto de colunas definido como chave única.
Uma unique key é importante porque garante que cada registro em um banco de dados seja único, prevenindo a inserção de dados duplicados. Sim, seu objetivo único é evitar dados duplicados.
Para adicionar uma UNIQUE KEY
a um campo em uma tabela, usamos a instrução ALTER TABLE
com a cláusula ADD CONSTRAINT
.
Veja a sintaxe,
ALTER TABLE nome_da_tabela ADD CONSTRAINT nome_da_chave_única UNIQUE (nome_da_coluna);
Veja um exemplo mais prático:
ALTER TABLE pagamentos ADD CONSTRAINT unique_recibo UNIQUE (recibo);
Atente-se para valores duplicados existentes
Se você for aplicar o comando acima em uma tabela com dados já existentes e contendo valores duplicados o comando retornará um erro:
ERROR 1062 (23000): Duplicate entry '1' for key 'unique_recibo'
Deixe apenas um dos valores, remova todos os demais repetidos e execute novamente o comando.
BÔNUS
Se, por acaso, está criando a tabela agora, poderá adicionar um campo como único dessa forma:
CREATE TABLE Exemplo (
ID INT PRIMARY KEY,
Nome VARCHAR(50) UNIQUE,
OutraColuna INT
);
Veja como remover uma chave única clicando aqui: Como Remover UNIQUE KEY de um Campo de Tabela? – Chave Única
Comment on “SQL: Como Fazer com que um Coluna não Aceite Valores Duplicados? Use UNIQUE KEY ou Chave Única!”