ADD CONSTRAINT Maison >base de données >tutoriel mysql >qu'est-ce que MySQL est unique Dans MySQL, unique fait référence à une « contrainte unique », ce qui signifie que la valeur d'un champ dans tous les enregistrements ne peut pas apparaître de manière répétée. Il peut y avoir plusieurs contraintes uniques dans une table et la colonne dans laquelle la contrainte unique est définie peut avoir des valeurs nulles, mais il ne peut y avoir qu'une seule valeur nulle. La syntaxe pour ajouter une contrainte unique lors de la modification d'une table est "ALTER TABLE c4980a0e26010a4658d4d772a6e93452 ADD CONSTRAINT ac6c6095923cf303900310059459e79c UNIQUE(7fb667abe63b2f43b0394465a3db07c5);". L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3. Dans MySQL, unique fait référence à "contrainte unique". Contrainte unique MySQL (CLÉ UNIQUE) La contrainte unique MySQL (Clé unique) signifie que la valeur d'un champ dans tous les enregistrements ne peut pas apparaître de manière répétée. Par exemple, après avoir ajouté une contrainte unique au champ id, la valeur id de chaque enregistrement est unique et ne peut pas être répétée. Si la valeur d'identifiant de l'un des enregistrements est « 0001 », alors il ne peut pas y avoir d'autre enregistrement avec la valeur d'identifiant de « 0001 » dans la table. Les contraintes uniques sont similaires aux contraintes de clé primaire dans le sens où elles garantissent toutes deux l'unicité des colonnes. La différence est qu'il peut y avoir plusieurs contraintes uniques dans une table et que la colonne dans laquelle la contrainte unique est définie peut avoir des valeurs nulles, mais il ne peut y avoir qu'une seule valeur nulle. Il ne peut y avoir qu'une seule contrainte de clé primaire dans une table et les valeurs nulles ne sont pas autorisées. Par exemple, dans le tableau d'informations utilisateur, afin d'éviter les noms d'utilisateur en double dans le tableau, le nom d'utilisateur peut être défini comme une contrainte unique. Définissez des contraintes uniques lors de la création de la table Des contraintes uniques peuvent être définies directement lors de la création de la table, généralement sur d'autres colonnes à l'exception de la clé primaire. Utilisez le mot-clé UNIQUE directement après avoir défini la colonne pour spécifier une contrainte unique. Le format de syntaxe est le suivant : Exemple 1 : Créez la table de données tb_dept2 et spécifiez un nom unique pour le département et. les résultats d'exécution sont les suivants. Ajouter une contrainte unique lors de la modification de la table Le format syntaxique d'ajout d'une contrainte unique lors de la modification de la table est : Exemple 2 : Modifier la table de données tb_dept1, préciser le nom unique du département , Instruction SQL et résultats d'exécution Comme indiqué ci-dessous. Supprimer une contrainte unique Le format syntaxique pour supprimer une contrainte unique dans MySQL est le suivant : Exemple 3 : Supprimer la contrainte unique nom_unique dans la table de données tb_dept1 L'instruction SQL et les résultats en cours d'exécution. sont les suivants. 【Recommandations associées : tutoriel vidéo mysql】 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!qu'est-ce que MySQL est unique
<字段名> <数据类型> UNIQUE
mysql> CREATE TABLE tb_dept2
-> (
-> id INT(11) PRIMARY KEY,
-> name VARCHAR(22) UNIQUE,
-> location VARCHAR(50)
-> );
Query OK, 0 rows affected (0.37 sec)
mysql> DESC tb_dept2;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(40) | YES | UNI | NULL | |
| location | varchar(50) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.08 sec)
ALTER TABLE <数据表名> ADD CONSTRAINT <唯一约束名> UNIQUE(<列名>);
mysql> ALTER TABLE tb_dept1
-> ADD CONSTRAINT unique_name UNIQUE(name);
Query OK, 0 rows affected (0.63 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> DESC tb_dept1;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(22) | NO | UNI | NULL | |
| location | varchar(50) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
ALTER TABLE <表名> DROP INDEX <唯一约束名>;
mysql> ALTER TABLE tb_dept1
-> DROP INDEX unique_name;
Query OK, 0 rows affected (0.20 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> DESC tb_dept1;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(22) | NO | | NULL | |
| location | varchar(50) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
Articles Liés
Voir plus