修改列字段(RENAME TO/MODIFY/CHANGE)

Exisi 2023-01-29 14:52:33
Categories: Tags:

修改列字段 名(RENAME TO

  • ALTER TABLERENAME … TO 语句只用于修改列字段名,如果目标表不存在,或者重命名目标表为已存在的表名称,系统均会返回异常
  • 可以加上 IF EXISTS 语句

语法

ALTER TABLE [IF EXISTS] <tbl_name>

RENAME [COLUMN] <old_tbl_name> TO <new_tbl_name> ;

 

参数

描述

<tbl_name>

数据表名

<old_tbl_name>

旧数据表名

<old_tbl_name>>

新数据表名

示例

mysql> ALTER TABLE tb_emp1

    -> RENAME TO tb_test;

 

Query OK, 0 rows affected (0.1 sec)

Records: 0  Duplicates: 0  Warnings: 0

 

  • 外部表的重命名

示例

mysql> ALTER FOREIGN TABLE tb_student

    -> RENAME TO tb_school;

 

Query OK, 0 rows affected (0.1 sec)

Records: 0  Duplicates: 0  Warnings: 0

 

 

 

修改列字段 属性(MODIFY

  • ALTER TABLEMODIFY 语句用于更改改变表的列字段属性

语法

ALTER TABLE [IF EXISTS] <tbl_name>

MODIFY [COLUMN] <column_name> column_definition

[FIRST | AFTER column_name] ;

 

参数

描述

<tbl_name>

数据表名

<column_name>

列字段名

column_definition

列字段属性,数据类型、约束条件

FIRST

在列字段的头部插入

AFTER <column_name>

在列字段后插入

示例

mysql> ALTER TABLE tb_emp1

    -> MODIFY name VARCHAR(30);

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

不设置 FIRST | AFTER column_name 时,默认在末尾插入列字段

 

 

修改列字段 名称+属性(CHANGE

  • ALTER TABLECHANGE 语句可以在修改时更改表的名称和属性

语法

ALTER TABLE [IF EXISTS] <tbl_name>

CHANGE [COLUMN] <old_col_name> <new_col_name> column_definition

[FIRST | AFTER column_name] ;

 

参数

描述

<tbl_name>

数据表名

<column_name>

列字段名

<old_col_name>

旧列字段名

<new_col_name>

新列字段名

column_definition

列字段属性,数据类型、约束条件

FIRST

在列字段的头部插入

AFTER <column_name>

在列字段后插入

示例

mysql> ALTER TABLE tb_emp1

    -> CHANGE [COLUMN] stu_num stuNo INT NOT NULL FIRST;

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0