【发布时间】:2019-12-22 11:03:23
【问题描述】:
我想将表上的聚集索引更改为主键以外的列组合。
如何删除聚集索引,保留我拥有的相同主键,并在一组新列上添加新的聚集索引。
最终结果 - 非聚集索引 PK,新列集上的聚集索引。
【问题讨论】:
标签: sql-server tsql clustered-index
我想将表上的聚集索引更改为主键以外的列组合。
如何删除聚集索引,保留我拥有的相同主键,并在一组新列上添加新的聚集索引。
最终结果 - 非聚集索引 PK,新列集上的聚集索引。
【问题讨论】:
标签: sql-server tsql clustered-index
您可以这样做的唯一方法是:
1) 首先使用以下代码删除约束:
ALTER TABLE TABLENAME DROP CONSTRAINT ConstrainName
2) 然后使用以下代码在您想要的列上创建聚集索引:
Create clustered index Index_Name on TableName (column1,column2)
3) 在列上创建主键:
ALTER TABLE TableName
ADD CONSTRAINT constraint_name PRIMARY KEY (ColumnName);
【讨论】: