Maison  >  Article  >  base de données  >  Comment pouvons-nous appliquer des contraintes UNIQUES sur les champs d'une table MySQL existante ?

Comment pouvons-nous appliquer des contraintes UNIQUES sur les champs d'une table MySQL existante ?

PHPz
PHPzavant
2023-09-16 21:05:021149parcourir

我们如何对现有 MySQL 表的字段应用 UNIQUE 约束?

Nous pouvons appliquer des contraintes UNIQUE aux colonnes des tables MySQL existantes à l'aide de l'instruction ALTER TABLE.

Syntaxe

ALTER TABLE table_name MODIFY colum_name datatype UNIQUE;
                    OR
ALTER TABLE table_name ADD UNIQUE (colum_name);

Exemple

Supposons que nous ayons une table nommée "Test4" et que nous souhaitions ajouter une contrainte UNIQUE à la colonne "Nom", cela peut alors être fait à l'aide de la commande ALTER TABLE comme suit-

mysql> DESCRIBE test4;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  | UNI | NULL    |       |
| Name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.04 sec)

mysql> ALTER TABLE test4 MODIFY Name Varchar(20) UNIQUE;
Query OK, 0 rows affected (0.22 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> DESCRIBE test4;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID    | int(11)     | YES  | UNI | NULL    |       |
| Name  | varchar(20) | YES  | UNI | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.04 sec)

D'après ce qui précède Comme on peut le voir dans le jeu de résultats, MySQL ajoute une contrainte UNIQUE au champ "Nom". Nous pouvons également ajouter des contraintes UNIQUE en utilisant la requête suivante -

mysql> Alter table test4 add UNIQUE(name);
Query OK, 0 rows affected (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer