Ian*_*oyd 5 sql-server sql-server-2008-r2
我想将表移动到新的文件组.使用接受的答案作为起点:
CREATE CLUSTERED INDEX CIX_YourTable
ON dbo.YourTable(YourClusteringKeyFields)
WITH DROP_EXISTING
ON [filegroup_name]
Run Code Online (Sandbox Code Playgroud)
我适应我的用途:
CREATE CLUSTERED INDEX PK_AuditLog_AuditLogID
ON dbo.AuditLog(AuditLogID)
WITH DROP_EXISTING
ON [TheOtherFileGroup]
Run Code Online (Sandbox Code Playgroud)
给出错误:
消息1907,级别16,状态1,行1
无法重新创建索引'PK_AuditLog_AuditLogID'.新索引定义与现有索引强制执行的约束不匹配.
这是,我认为,因为PK_AuditLog_AuditLogID是
所以我需要语法来创建主键聚簇索引 WITH DROP_EXISTING
MS.*_*MS. 15
CREATE UNIQUE CLUSTERED INDEX PK_AuditLog_AuditLogID
ON dbo.AuditLog(AuditLogID)
WITH DROP_EXISTING
ON [TheOtherFileGroup]
Run Code Online (Sandbox Code Playgroud)
逻辑主键约束被保存(虽然在2012测试)
CREATE TABLE dbo.AuditLog
(
AuditLogID int constraint PK_AuditLog_AuditLogID primary key
)
CREATE UNIQUE CLUSTERED INDEX PK_AuditLog_AuditLogID
ON dbo.AuditLog(AuditLogID)
WITH DROP_EXISTING
ON [Primary]
SELECT CONSTRAINT_TYPE /*Returns PRIMARY KEY*/
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE CONSTRAINT_NAME = 'PK_AuditLog_AuditLogID'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16001 次 |
| 最近记录: |