Insira valor não duplicado em uma tabela MySQL
Para permitir a inserção apenas de valores não duplicados, use a restrição UNIQUE. Vamos primeiro criar uma tabela:
mysql> create table DemoTable832(
FirstName varchar(100),
LastName varchar(100),
UNIQUE(FirstName,LastName)
);
Query OK, 0 rows affected (0.87 sec)
Insira alguns registros na tabela usando o comando insert:
mysql> insert into DemoTable832 values('John','Smith');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable832 values('Adam','Smith');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable832 values('John','Doe');
Query OK, 1 row affected (0.33 sec)
mysql> insert into DemoTable832 values('John','Smith');
ERROR 1062 (23000): Duplicate entry 'John-Smith' for key 'FirstName'
Acima, tentamos inserir uma entrada duplicada na tabela, mas pode ser observado um erro.
Exiba todos os registros da tabela usando a instrução select:
mysql> select *from DemoTable832;
Isso produzirá a seguinte saída:
+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| Adam | Smith |
| John | Doe |
| John | Smith |
+-----------+----------+
3 rows in set (0.00 sec)