Maison  >  Article  >  base de données  >  Comment ajouter des colonnes (champs) dans MySQL

Comment ajouter des colonnes (champs) dans MySQL

青灯夜游
青灯夜游original
2021-12-03 18:21:0952282parcourir

Dans MySQL, vous pouvez utiliser l'instruction "ALTER TABLE" et le mot-clé ADD pour ajouter des colonnes (champs). La syntaxe est "ALTER TABLE nom de la table ADD nouveau type de données de nom de champ [contrainte] ;" ; utilisé dans Ajouter des colonnes (champs) à la fin du tableau de données.

Comment ajouter des colonnes (champs) dans MySQL

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

La table de données MySQL est composée de lignes et de colonnes. Les "colonnes" de la table sont généralement appelées champs, et les "lignes" de la table sont appelées enregistrements. À mesure que votre entreprise évolue, vous devrez peut-être ajouter de nouveaux champs aux tables existantes.

Dans MySQL, vous pouvez utiliser l'instruction "ALTER TABLE" et le mot-clé ADD pour ajouter des colonnes (champs).

Grammaire :

ALTER TABLE 表名 ADD 新字段名 数据类型[约束条件];

La description du format de syntaxe est la suivante :

Nouveau nom de champ : est le nom du champ à ajouter
  • 表名 :为数据表的名字;

  • 新字段名 :为所要添加的字段的名字;

  • 数据类型 :为所要添加的字段能存储数据的数据类型;

  • [约束条件] :是可选的,用来对添加的字段进行约束。

这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。

示例:

我们有一个student 数据表,使用 DESC 查看 student 表结构

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

使用 ALTER TABLE 语句添加一个 INT 类型的字段 age,在看看 student 表结构

mysql> ALTER TABLE student ADD age INT(4);
Query OK, 0 rows affected (0.16 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

可以看出student 表已经添加了 age 字段,且该字段在表的最后一个位置,添加字段成功。

那么如果想要在开头或者中间添加字段,需要怎么做?

  • 如果希望在开头位置(第一列的前面)添加新字段,那么需要借助 FIRST 关键字

  • 如果希望在中间位置添加新字段,那么需要借助 AFTERType de données ;  : est le type de données dans lequel le champ à ajouter peut stocker des données ;

[Contraintes] : est facultatif et utilisé pour contraindre les champs ajoutés.

Ce format de syntaxe ajoute un nouveau champ à la dernière position du tableau (après la dernière colonne) par défaut.

Exemple :

Nous avons une table de données d'étudiant, utilisez DESC pour afficher la structure de la table d'étudiant

ALTER TABLE 表名 ADD 新字段名 数据类型 [约束条件] FIRST;

ALTER TABLE 表名 ADD 新字段名 数据类型 [约束条件] AFTER <已经存在的字段名>;
Utilisez l'instruction ALTER TABLE pour ajouter un champ de type INT age et regardez la structure de la table d'étudiant

mysql> ALTER TABLE student ADD stuId INT(4) FIRST;
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| stuId | int(4)      | YES  |     | NULL    |       |
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)
🎜Vous pouvez voir que la table des étudiants a été ajoutée. Le champ âge est ajouté et le champ est à la dernière position de la table. Le champ est ajouté avec succès. 🎜🎜🎜Alors, que devez-vous faire si vous souhaitez ajouter un champ au début ou au milieu ? 🎜🎜🎜🎜🎜Si vous souhaitez ajouter un nouveau champ au début (devant la première colonne), vous devez utiliser le mot-clé FIRST 🎜🎜🎜🎜Si vous souhaitez ajouter un nouveau champ au milieu, vous devez utiliser AFTER Le format de syntaxe du mot-clé 🎜🎜🎜🎜 est le suivant : 🎜
mysql> ALTER TABLE student ADD stuno INT(11) AFTER name;
Query OK, 0 rows affected (0.13 sec)
Records: 0  Duplicates: 0  Warnings: 0
 
mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| stuId | int(4)      | YES  |     | NULL    |       |
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| stuno | int(11)     | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
6 rows in set (0.00 sec)
🎜Exemple : 🎜rrreee🎜student Un champ stuId est ajouté à la table, et le field est en première position dans la table 🎜rrreee🎜student Un champ stuId est ajouté à la table et le champ est situé après le champ name🎜🎜[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!

Déclaration:
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