[TOC] # 更改表 表创建成功后,您可以使用`ALTER TABLE`语句对表进行修改。 ## 修改索引 * MySQL 模式 OceanBase 数据库的 MySQL 模式支持增加唯一索引和普通索引,同时还支持修改索引的属性。 * 增加唯一索引 OceanBase 数据库支持在创建表后为表增加唯一索引。如果创建表时同时设置了主键,OceanBase 数据库会默认为主键列创建一个唯一索引。 增加唯一索引的示例如下: ~~~ obclient> CREATE TABLE test (c1 int PRIMARY KEY, c2 VARCHAR(50)); Query OK, 0 rows affected (0.04 sec) obclient> ALTER TABLE test ADD UNIQUE INDEX index_name(c2); Query OK, 0 rows affected (0.53 sec) ~~~ * 增加普通索引 OceanBase 数据库的 MySQL 模式支持一次增加多个索引,索引关键字用`INDEX`或`KEY`均可以。 ~~~ obclient> CREATE TABLE test (c1 int PRIMARY KEY, c2 VARCHAR(50)); Query OK, 0 rows affected (0.04 sec) obclient> ALTER TABLE test ADD INDEX myidx(c1,c2); Query OK, 0 rows affected (0.55 sec) ~~~ * 修改索引属性 OceanBase 数据库的 MySQL 模式支持将索引修改为可见或不可见,默认索引均可见,您可以将索引修改为不可见。 语法如下: ~~~ obclient> ALTER TABLE test ALTER INDEX myidx INVISIBLE; ~~~ ## 重命名表 表创建成功后,您可以更改表名。 OceanBase 数据库的 MySQL 模式支持重命名表。 示例如下: ~~~ obclient> ALTER TABLE test RENAME TO t1; ~~~ ## 删除表组 OceanBase 数据库的 MySQL 模式支持删除表所属的表组。 MySQL 模式下删除表组的示例如下: ~~~ obclient> ALTER TABLE test DROP TABLEGROUP grp1; ~~~ 更多表组相关信息,请参见[管理表组](https://open.oceanbase.com/docs/community/oceanbase-database/V3.1.0/about-table-groups)章节。 ## 删除外键 OceanBase 数据库的 MySQL 模式支持删除表的外键。 * MySQL 模式下删除表的外键示例 ~~~ obclient> ALTER TABLE test DROP FOREIGN KEY fk_name; ~~~