MariaDB - Alter Command

ALTER命令提供了一种更改现有表结构的方法,这意味着删除或添加列,修改索引,更改数据类型或更改名称等修改.当元数据锁定处于活动状态时,ALTER还等待应用更改.

使用ALTER修改列

与DROP配对的ALTER将删除现有列.但是,如果列是唯一的剩余列,则会失败.

查看下面给出的示例 :

mysql> ALTER TABLE products_tbl DROP version_num;

使用ALTER ... ADD语句添加列和减号;

mysql> ALTER TABLE products_tbl ADD discontinued CHAR(1);

使用关键字FIRST和AFTER指定列的位置 :

ALTER TABLE products_tbl ADD discontinued CHAR(1) FIRST;
ALTER TABLE products_tbl ADD discontinued CHAR(1) AFTER quantity;

注意FIRST和AFTER关键字仅适用于ALTER ... ADD语句.此外,您必须删除一个表,然后添加它以便重新定位它.

使用ALTER语句中的MODIFY或CHANGE子句更改列定义或名称.这些条款具有类似的效果,但使用了截然不同的语法.

查看下面给出的改变示例 :

mysql> ALTER TABLE products_tbl CHANGE discontinued status CHAR(4);

在使用CHANGE的语句中,指定原始列,然后指定将替换它的新列.查看下面的&MODIFY示例 :

mysql> ALTER TABLE products_tbl MODIFY discontinued CHAR(4);

ALTER命令还允许更改默认值.查看示例 :

mysql> ALTER TABLE products_tbl ALTER discontinued SET DEFAULT N;

您还可以使用它来删除默认约束,方法是将其与DROP子句配对 :

mysql> ALTER TABLE products_tbl ALTER discontinued DROP DEFAULT;

使用ALTER修改表

使用TYPE子句更改表类型 :

mysql> ALTER TABLE products_tbl TYPE = INNODB;

使用RENAME关键字 : 重命名表格;

mysql> ALTER TABLE products_tbl RENAME TO products2016_tbl;