暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

达梦删除聚集主键及聚集主键索引

原创 LeeWen2020 2021-04-29
4653

现状描述

直接删除聚集主键,则会报错“试图删除聚集主键”。聚集主键索引无法直接删除,会提示“没有删除表[xx]上索引的权限”。

解决办法

两种办法:

第一种:在表上新建一个聚集索引,那么聚集主键索引会变为非聚集,这样可以直接删除主键和索引;

第二种:重新建表,建表时显示指定主键为非聚集;或者在建表之前修改ini参数PK_WITH_CLUSTER为0,这样默认创建主键时为非聚集型;

具体操作如下:

第一种方法:

CREATE TABLE tab1 (A INT PRIMARY KEY,B VARCHAR,C VARCHAR); ---首先创建新的聚集索引 CREATE CLUSTER INDEX IDX01 ON tab1(b); ---然后删除主键约束,主键索引会自动删除(无法直接删除主键索引) alter table tab1 drop constraint CONS134218785; ---删除新建的聚集索引 drop index IDX01; ---更改主键为非聚集主键 alter table tab1 add NOT CLUSTER primary key(A);

第二种方法:

(1)创建表时指定主键为非聚集主键

CREATE TABLE tab1 (A INT NOT CLUSTER PRIMARY KEY,B VARCHAR,C VARCHAR);

(2)建表之前修改PK_WITH_CLUSTER参数值为0

SP_SET_PARA_VALUE(1,'PK_WITH_CLUSTER',0);
CREATE TABLE tab2 (A INT PRIMARY KEY,B VARCHAR,C VARCHAR);

更多资讯请上达梦技术社区了解:https://eco.dameng.com

最后修改时间:2021-08-03 11:32:37
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论