修改表结构

修改表结构使用ALTER TABLE语句。修改表结构指增加或删除字段、修改字段名或者字段类型、设置或取消主键外键、设置或取消索引及修改表的注释等。

语法格式如下:

ALTER[IGNORE] TABLE 数据表名 alter_spec[,alter_spec]...;

注意:当指定IGNORE时,如果出现重复关键的行,则只执行一行,其他重复的行被删除。

其中,alter_spec子句定义要修改的内容,起语法如下:

alter_specification:

ADD[COLUMN]create_definition[FIRST|AFTER column_name]                            //添加新字段
ADD INDEX [index_name](index_col_name,...)                                       //添加索引名称
ADD PRIMARY KEY(index_col_name,...)                                              //添加主键名称
ADD UNIQUE[index_name](index_col_name,...)                                       //添加唯一索引
ALTER[COLUMN]col_name{SET DEFAULT ilteral |DROP DEFAULT}                         //修改字段名称
CHANGE[COLUMN]old_col_name create_definition                                     //修改字段类型
MODIFY[COLUMN]create_definition                                                  //修改子句定义字段
DROP[COLUMN]col_name                                                             //删除字段名称
DROP PRIMARY KEY                                                                 //删除主键名称
DROP INDEX index_name                                                            //删除索引名称
RENAME [AS]new_tbl_name                                                          //更改表名
table_options
登录后复制

ALTER TABLE语句允许指定多个alter_spec子句,每个子句间使用逗号分隔,每个子句表示对表的一个修改。

例如:假设有张表叫admin,现在要添加新的字段email,类型为varcher(50),not null,将字段user的类型由varcher(50)改为varcher(40),代码如下:

alter table admin add email varcher(50) not null,modify user varcher(40);

在添加完成之后,大家还可以通过show admin;查看整个表的结构,以此来确认字段是否添加成功。

注意:通过alter修改表列的前提是必须将表中数据全部删除,然后才可以修改。

以上就是MySQL修改数据表(MYSQL数据表操作教程2)的详细内容,更多请关注Work网其它相关文章!

09-12 02:34