MySQL 修改表

2024年03月26日 MySQL 修改表 极客笔记

MySQL 修改表

MySQL ALTER语句用于修改表名或表字段的名称。它还用于在表中添加或删除现有列。

根据情况,ALTER语句始终与“ADD”、“DROP”和“MODIFY”命令一起使用。

1) 在表中添加列

语法:

ALTER TABLE table_name
ADD new_column_name column_definition
[ FIRST | AFTER column_name ];

参数

table_name: 它指定你想要修改的表的名称。

new_column_name: 它指定你想要添加到表中的新列的名称。

column_definition: 它指定列的数据类型和定义(NULL或NOT NULL等)。

FIRST | AFTER column_name: 这是可选的。它告诉MySQL在表中的哪个位置创建该列。如果未指定此参数,新列将添加到表的末尾。

示例:

在此示例中,我们在现有表”cus_tbl”中添加一个名为”cus_age”的新列。

使用以下查询来实现:

ALTER TABLE cus_tbl
ADD cus_age varchar(40) NOT NULL;

输出:

查看最近添加的列:

SELECT* FROM cus_tbl;

输出:

2) 在表中添加多个列

语法:

 ALTER TABLE 表名
 ADD 新列名 列定义
 [ FIRST | AFTER 列名 ],
ADD 新列名 列定义
[ FIRST | AFTER 列名 ],
  ...
;

示例:

在这个示例中,我们在现有的表 “cus_tbl” 中添加了两个新列 “cus_address” 和 “cus_salary”。cus_address 在 cus_surname 列之后添加,cus_salary 在 cus_age 列之后添加。

使用以下查询来完成:

ALTER TABLE cus_tbl
ADD cus_address varchar(100) NOT NULL
AFTER cus_surname,
ADD cus_salary int(100) NOT NULL
AFTER cus_age ;

查看最近添加的列:

SELECT* FROM cus_tbl;

3) 修改表中的列

MODIFY命令用于更改表的列定义。

语法:

ALTER TABLE 表名
MODIFY 列名 列定义
[ FIRST | AFTER 列名 ];

示例:

在这个示例中,我们将列 cus_surname 修改为 varchar(50) 数据类型,并强制该列允许 NULL 值。

使用以下查询来完成:

ALTER TABLE cus_tbl
MODIFY cus_surname varchar(50) NULL;

查看表结构:

4) 删除表中的列

语法:

ALTER TABLE 表名
DROP COLUMN 列名;

让我们举一个例子,从表 “cus_tbl” 中删除列 “cus_address”。

使用以下查询来完成:

ALTER TABLE cus_tbl
DROP COLUMN cus_address;

输出:

查看表结构:

5) 在表中重命名列

语法:

ALTER TABLE 表名
CHANGE COLUMN 旧列名 新列名 
列定义
[ FIRST | AFTER 列名 ]

示例:

在这个示例中,我们将列名 “cus_surname” 更改为 “cus_title”。

使用以下查询来完成:

 ALTER TABLE  cus_tbl
CHANGE COLUMN cus_surname cus_title
varchar(20) NOT NULL;

输出:

6) 重命名表

语法:

ALTER TABLE 表名
RENAME TO 新表名;

示例:

在这个示例中,表名 cus_tbl 被重命名为 cus_table。

ALTER TABLE cus_tbl
RENAME TO cus_table;

输出:

查看重命名后的表:

本文链接:http://so.lmcjl.com/news/407/

展开阅读全文