MySQL 操作已存在的表(ALTER TABLE)
Posted Blog_Lee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 操作已存在的表(ALTER TABLE)相关的知识,希望对你有一定的参考价值。
说明:
- <> 中的内容是自己定义的内容
- [] 中的内容是可以省略的
- field 包含字段名和数据类型,field_name 仅指字段名
- table_name 指表名
- position 指字段位置,可取值:FIRST、AFTER <field>
修改表名
-- 修改数据表名称。
-- old_table_name 是修改之前的名称
-- new_table_name 是修改之后的名称
ALTER TABLE <old_table_name> RENAME [TO] <new_table_name>;
添加字段
-- 给数据表添加字段
ALTER TABLE <table_name> ADD [COLUMN] <field> [position];
如果需要添加多个字段,使用
,
连接
eg.
ALTER TABLE <table_name> ADD [COLUMN] <field> [position], ADD [COLUMN] <field> [position], ...;
修改字段
- 修改字段名称
ALTER TABLE <table_name> CHANGE [COLUMN] <field_name> <field> [position];
- 修改字段类型
ALTER TABLE <table_name> MODIFY <field_name> <new_type> [position];
-- 或
ALTER TABLE <table_name> CHANGE [COLUMN] <field_name> <field_name> <new_type> [position];
- 修改字段的位置
ALTER TABLE <table_name> MODIFY <field> [position];
-- 或
ALTER TABLE <table_name> CHANGE [COLUMN] <field_name> <field> [position];
删除字段
ALTER TABLE <table_name> DROP <field_name>;
修改字段默认值
ALTER TABLE <table_name> ALTER <field_name> SET DEFAULT <value>;
删除字段默认值
ALTER TABLE <table_name> ALTER <field_name> DROP DEFAULT;
修改存储引擎
ALTER TABLE <table_name> ENGINE = <engine_name>;
以上是关于MySQL 操作已存在的表(ALTER TABLE)的主要内容,如果未能解决你的问题,请参考以下文章
13.PostgreSQL Alter,Truncate Table
mysql数据库在已存在表格上增删列,能否用alter table语句实现?
sql ALTER TABLE if列不存在。来自http://stackoverflow.com/questions/24571611/mysql-alter-table-if-column-not