Sur SQL Server 2012, je souhaite indexer une table avec un indice colonne. Mais un message d'erreur espère:
MSG 35338, niveau 16, état 1, ligne 1
L'indice de colonne en cluster n'est pas pris en charge.
Mon code est:
CREATE TABLE [dbo].[Card](
[CardId] [int] IDENTITY(1,1) NOT NULL,
[CardSerialNumber] [varchar](19) NULL,
[CreateDate] [datetime] NOT NULL
) ON [PRIMARY]
GO
CREATE CLUSTERED COLUMNSTORE INDEX cci_Simple ON [dbo].[Card]
SQL Server 2012 ne prend en charge que la création d'index de colonne non clustered. Changez votre code à:
CREATE NONCLUSTERED COLUMNSTORE INDEX cci_Simple ON [dbo].[Card]
Dans SQL Server 2012, cela rendra votre table en lecture seule. Vous devriez probablement regarder l'ajout des trois colonnes de la table à l'indice de colonne de ColumnStore, mais je vais laisser cela à vos tests.
Notez que les index de ColumnStore nécessitent également une édition d'entreprise.