达梦数据库中修改某张表的某个字段的时候,提示:表中不能同时包含聚集key和大字段怎么办?

提问者:帅平 问题分类:数据库
达梦数据库中修改某张表的某个字段的时候,提示:表中不能同时包含聚集key和大字段怎么办?
达梦数据库中修改某张表的某个字段的时候,提示:表中不能同时包含聚集key和大字段怎么办?
2 个回答
不换爱人
不换爱人
这种如果是dm8的话,则是因为创建表的时候使用了cluster模式,因此在修改表的时候提示了表中不能同时包含聚集key和大字段的错误,如下图:

如果表数据是空或者表数据无关简要的话,可以把当前表给删除掉,从新使用not cluster的方式来进行创建,就可以任意进行修改了,示例如下:
发布于:5个月前 (11-25) IP属地:四川省
巴黎小甜心
巴黎小甜心
如果表的数据非常多或非常重要的话,可以使用创建新表->重命名老表->重命名新表->把老表的数据插入到新表。详细的演示步骤如下:
#创建新表
CREATE TABLE "DEMO"."TEST1_new"
(
"ID" VARCHAR(50) NOT NULL,
"VIEW_IDS" VARCHAR(50),
NOT CLUSTER PRIMARY KEY("ID")) STORAGE(ON "MAIN", CLUSTERBTR) ;
ALTER table "DEMO"."TEST1_new" MODIFY("VIEW_IDS" TEXT);
#重命名老表
ALTER TABLE "DEMO"."TEST1" RENAME TO "TEST1_bak";
#重命名新表
ALTER TABLE "DEMO"."TEST1_new" RENAME TO "TEST1";
#把老表的数据插入新表
INSERT INTO "DEMO"."TEST1" SELECT * FROM "DEMO"."TEST1_bak";
发布于:5个月前 (11-25) IP属地:四川省
我来回答