Pour supprimer la contrainte UNIQUE de la table MySQL, nous devons d'abord vérifier le nom de l'index créé par la contrainte UNIQUE sur la table. Nous savons que l'instruction SHOW INDEX est utilisée à cette fin. 'key_name' dans le jeu de résultats de l'instruction SHOW INDEX contient le nom de l'index. Désormais, vous pouvez utiliser l'instruction DROP INDEX ou l'instruction ALTER TABLE pour supprimer les contraintes UNIQUE. La syntaxe des deux instructions est la suivante :
DROP INDEX index_name ON table_name; OR ALTER TABLE table_name DROP INDEX index_name;
Supposons que nous ayons une table appelée « empl » qui a une contrainte unique sur la colonne « empno ». Le nom de l'index peut être vérifié par −
mysql> Show Index from empl\G *************************** 1. row *************************** Table: empl Non_unique: 0 Key_name: empno Seq_in_index: 1 Column_name: empno Collation: A Cardinality: 0 Sub_part: NULL Packed: NULL Null: YES Index_type: BTREE Comment: Index_comment: 1 row in set (0.02 sec)
Maintenant, si nous voulons supprimer la contrainte unique, nous pouvons écrire la requête suivante −
mysql> ALTER TABLE empl DROP INDEX empno; Query OK, 0 rows affected (0.26 sec) Records: 0 Duplicates: 0 Warnings: 0
L'ensemble de résultats de la requête suivante montrera qu'il n'y a pas de contrainte unique sur la colonne 'empno' −
mysql> describe empl; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | empno | int(11) | YES | | NULL | | | F_name | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec)
Même si nous exécutons Affichage de l'index à partir de la requête empl, MySQL renverra également un ensemble vide comme indiqué ci-dessous −
mysql> Show index from empl; Empty set (0.00 sec)
La contrainte UNIQUE peut être supprimée de la table 'empl' en utilisant l'instruction DROP INDEX comme ci-dessous :
mysql> DROP INDEX empno on empl; Query OK, 0 rows affected (0.17 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!