DM 表结构修改
注:达梦数据库在操作数据库的时候需要带上模式名、即 模式名+表名
模式名 – 也就是数据库名
索引
一个 [模式] 下,[索引名称] 唯一
创建索引
示例:
# 语法
CREATE INDEX "[索引名称]" ON "[模式名]"."[表名]"("[字段名]" ASC) STORAGE(ON "MAIN", CLUSTERBTR);# 创建普通索引
CREATE INDEX "idx_name" ON "DM_TEST"."STUDENT"("NAME" ASC) STORAGE(ON "MAIN", CLUSTERBTR);# 创建唯一索引
CREATE UNIQUE INDEX "ux_name" ON "DM_TEST"."STUDENT"("NAME" ASC) STORAGE(ON "MAIN", CLUSTERBTR);
说明:
idx_name
:需要创建的索引的名称"DM_TEST"."STUDENT"
:模式名 + 表名NAME
:需要创建建索引的字段名
删除索引
示例:
# 语法
DROP INDEX "[模式名]"."[索引名称]";# 示例
DROP INDEX "DM_TEST"."idx_name";
约束
一个 [模式] 下,[约束名称] 唯一
创建唯一约束
示例:
# 语法
alter table "[模式名]"."[表名]" add constraint "[约束名称]" unique("[字段名]");# 示例
alter table "DM_TEST"."CLASS" add constraint "ux_name" unique("NAME");
- 创建唯一约束,会自动创建对应的唯一索引
- 删除时,也会自动删除对应的唯一索引
创建检查约束
示例:
# 语法
alter table "[模式名]"."[表名]" add constraint "[约束名称]" check("表达式");# 示例
alter table "DM_TEST"."CLASS" add constraint "chk_status" check(STATUS = 0 or STATUS = 1);
删除约束
# 语法
alter table "[模式名]"."[表名]" drop constraint "[约束名称]";# 示例
alter table "DM_TEST"."CLASS" drop constraint "ux_name";alter table "DM_TEST"."CLASS" drop constraint "chk_status";
表结构修改
调整字段顺序
达梦数据库的 MODIFY
语句并不支持直接指定字段顺序。
您需要在添加新字段时就指定其位置,如下所示:
ALTER TABLE DM_TEST.STUDENT ADD (AGE INT) AFTER ID;
增加字段
# 语法
alter table "[模式名]"."[表名]" add column "[字段名称]" "[字段数据类型]";# 示例
alter table "DM_TEST"."ENT_INFO" add column("ENT_TYPE" VARCHAR(100));
alter table "DM_TEST"."ENT_INFO" add column("ENT_TYPE" VARCHAR(100) not null);comment on column "DM_TEST"."ENT_INFO"."ENT_TYPE" is '企业类别';
修改字段类型
# 语法
alter table "[模式名]"."[表名]" modify "[字段名称]" "[更改后的字段类型]";# 示例
alter table "DM_TEST"."STUDENT" modify "NAME" VARCHAR(10 CHAR);
字段重命名
# 语法
alter table "[模式名]"."[表名]" alter column "[字段名称]" rename to "[更改后的字段名称]";# 示例
alter table DM_TEST.STUDENT alter column "id" rename to "ID";
设置字段可空或默认值
# 语法(设置字段可空)
alter table "[模式名]"."[表名]" alter column "[字段名称]" set null;# 示例
alter table "DM_TEST"."STUDENT" alter column "CODE" set null;# 语法(设置字段默认值)
alter table "[模式名]"."[表名]" alter column "[字段名称]" set default ("[默认值]");# 示例
alter table "DM_TEST"."STUDENT" alter column "CODE" set null;
学习参考
- 达梦数据库、表字段创建索引或删除索引,增加表字段、修改字段类型或长度、修改注释,大字段类型修改为varchar 类型,修改表名及注释sql语句_达梦数据库修改字段类型