Maison > base de données > tutoriel mysql > Comment ajouter des contraintes de clé primaire lors de la modification d'une table dans MySQL ?

Comment ajouter des contraintes de clé primaire lors de la modification d'une table dans MySQL ?

青灯夜游
Libérer: 2020-10-12 11:28:05
original
5115 Les gens l'ont consulté

Dans MySQL, vous pouvez utiliser l'instruction "ALTER TABLE table name ADD PRIMARY KEY (field name);" pour ajouter des contraintes de clé primaire lors de la modification de la table de données, vous devez définir la clé primaire ; contrainte de clé d'un champ de la table, assurez-vous que les valeurs des champs définis comme contraintes de clé primaire ne peuvent pas avoir de doublons et doivent être non nulles.

Comment ajouter des contraintes de clé primaire lors de la modification d'une table dans MySQL ?

(Tutoriel recommandé : Tutoriel vidéo MySQL)

Le nom complet de la clé primaire (PRIMARY KEY) est « Contrainte de clé primaire » est la contrainte la plus fréquemment utilisée dans MySQL. Dans des circonstances normales, afin de permettre au SGBD de trouver plus rapidement les enregistrements dans la table, une clé primaire sera définie dans la table.

Définissez les contraintes de clé primaire lors de la création de la table

Dans l'instruction CREATE TABLE, spécifiez la clé primaire via le mot-clé PRIMARY KEY.

Spécifiez la clé primaire lors de la définition du champ. Le format de syntaxe est le suivant :

<字段名> <数据类型> PRIMARY KEY [默认值]
Copier après la connexion

Exemple

Créez la table de données tb_emp3 dans la base de données test_db, dont la clé primaire est id, instruction SQL et exécution Les résultats sont les suivants.

mysql> CREATE TABLE tb_emp3
    -> (
    -> id INT(11) PRIMARY KEY,
    -> name VARCHAR(25),
    -> deptId INT(11),
    -> salary FLOAT
    -> );
Query OK, 0 rows affected (0.37 sec)
mysql> DESC tb_emp3;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | NO   | PRI | NULL    |       |
| name   | varchar(25) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)
Copier après la connexion

Ajouter des contraintes de clé primaire lors de la modification de la table

Des contraintes de clé primaire peuvent non seulement être créées lors de la création de la table, mais peuvent également être ajoutées lors de la modification de la table. Cependant, il convient de noter que les valeurs nulles ne sont pas autorisées dans les champs définis comme contraintes de clé primaire.

Le format de syntaxe pour ajouter une contrainte de clé primaire lors de la modification d'une table de données est le suivant :

ALTER TABLE <数据表名> ADD PRIMARY KEY(<字段名>);
Copier après la connexion

Normalement, lorsque vous souhaitez définir la contrainte de clé primaire d'un champ dans la table lors d'une modification Dans le tableau, assurez-vous de définir Les valeurs dans les champs qui forment les contraintes de clé primaire ne peuvent pas avoir de doublons et doivent être non nulles. Sinon, la contrainte de clé primaire ne peut pas être définie.

Exemple

Affichez la structure de la table de données tb_emp2. ​​L'instruction SQL et les résultats d'exécution sont les suivants.

mysql> DESC tb_emp2;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | NO   |     | NULL    |       |
| name   | varchar(30) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)
Copier après la connexion

Modifiez la table de données tb_emp2 et définissez l'identifiant du champ comme clé primaire. L'instruction SQL et les résultats d'exécution sont les suivants.

mysql> ALTER TABLE tb_emp2
    -> ADD PRIMARY KEY(id);
Query OK, 0 rows affected (0.94 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> DESC tb_emp2;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | NO   | PRI | NULL    |       |
| name   | varchar(30) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.12 sec)
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal