开发学院

您的位置:首页>教程>正文

教程正文

MariaDB Alter命令

MariaDB Alter命令

  ALTER命令提供更改现有表结构的功能,这意味着用户可以进行删除或添加列、修改索引、更改数据类型或更改名称等操作。当元数据锁处于活动状态时,ALTER还会等待应用更改。

使用ALTER修改列

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

  查看下面的例子

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子句更改列定义或名称。这些子句具有相似的效果,但是使用了基本不同的语法。

  查看下面给出的CHANGE示例:

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

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

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;