DDL概述
DDM支持通用的DDL操作:建库,建表,修改表结构等,但实现方式与普通的MySQL数据库有所区别。
在MySQL客户端执行DDL操作
- rename table name不支持与其他DDL语句在同一条SQL执行。
- 对拆分表执行修改字段名操作的同时执行类似SELECT * [DDL相关表]等包含全字段的查询语句时,有可能会上报列名不存在的异常,建议在业务低峰期执行此类修改操作,且等修改操作执行完成后再进行相关查询操作,以降低报错概率。
- 在DDM节点或后端RDS节点压力极大的情况下,对拆分表执行删除字段名操作的同时执行SELECT * [DDL相关表]等包含全字段的查询语句时,有可能会上报列名不存在的异常,建议在业务低峰期执行删除类操作,且等删除类操作执行完成后再进行相关查询操作,以降低报错概率。
- TRUNCATE Syntax
TRUNCATE TABLE t1;
表示清空表格t1。
TRUNCATE会将表完全清空,它需要DROP权限。在逻辑上类似于删除所有行的DELETE语句。
- ALTER TABLE Syntax
ALTER TABLE t2 DROP COLUMN c, DROP COLUMN d;
表示更改表t2的结构,删除c列和d列。
ALTER可以添加或删除列、创建或销毁索引、更改现有列的类型或重命名列或表本身。还可以更改特性,如用于表或表注释的存储引擎。
- DROP INDEX Syntax
DROP INDEX `PRIMARY` ON t;
表示删除表t中的主键。
DROP INDEX即从表tbl_name中删除名为index_name的索引。
- CREATE INDEX Syntax
CREATE INDEX part_of_name ON customer (name(10));
表示使用name列的前10个字符创建索引(假设name具有非二进制字符串类型)。
CREATE INDEX用于向现有表添加索引。