在 SSDT 中,我有一个表和列存储索引定义为:
CREATE TABLE [dbo].[FactBillPayTransaction] (
[NaturalKeyText] NVARCHAR (500) NOT NULL,
[RecordEffectiveDateTime] DATETIME2 (7) NOT NULL,
[SourceEffectiveUTCDateTime] DATETIME2 (7) NOT NULL,
[InsertJobRunSequenceNumber] BIGINT NOT NULL,
[LatestUpdateJobRunSequenceNumber] BIGINT NOT NULL,
[InsertDateTime] DATETIME2 (7) NOT NULL,
[LatestUpdateDateTime] DATETIME2 (7) NOT NULL,
[DeleteDateTime] DATETIME2 (7) NULL,
[ChangeControlChecksum] NVARCHAR (32) NOT NULL,
.......More Columns
);
GO
CREATE CLUSTERED COLUMNSTORE INDEX [ci_cs_FactBillPayTransaction]
ON [dbo].[FactBillPayTransaction];
When I generate scripts i get the following for SQL Server 2014:
CREATE TABLE [dbo].[FactBillPayTransaction] (
[NaturalKeyText] NVARCHAR (500) NOT NULL,
[RecordEffectiveDateTime] DATETIME2 (7) NOT NULL,
[SourceEffectiveUTCDateTime] DATETIME2 (7) NOT NULL,
[InsertJobRunSequenceNumber] BIGINT NOT NULL,
[LatestUpdateJobRunSequenceNumber] BIGINT NOT NULL,
[InsertDateTime] DATETIME2 (7) NOT NULL,
[LatestUpdateDateTime] DATETIME2 (7) NOT NULL,
[DeleteDateTime] DATETIME2 (7) NULL,
[ChangeControlChecksum] NVARCHAR (32) NOT NULL,
.......More Columns
);
CREATE CLUSTERED INDEX [ci_cs_FactBillPayTransaction]
ON [dbo].[FactBillPayTransaction]([NaturalKeyText]);
CREATE CLUSTERED COLUMNSTORE INDEX [ci_cs_FactBillPayTransaction]
ON [dbo].[FactBillPayTransaction] WITH (DROP_EXISTING = ON);
这两个创建“索引”命令似乎不正确,还有,为什么它引用了一列?