2017-11-13 3 views
1

Dokumentation sagt, dass wir nicht nonclustered columns Indizes in Primärschlüssel oder FremdschlüsselspaltenNicht Clustered Columns Indizes und Primär-/Fremdschlüssel

https://docs.microsoft.com/en-us/sql/t-sql/statements/create-columnstore-index-transact-sql

" Eine Tabelle mit einem nicht gruppierten columns Index kann erstellen haben eindeutige Einschränkungen, Primärschlüssel oder Fremdschlüssel-Constraints, aber die Einschränkungen nicht im nonclustered columns Index aufgenommen werden. "

aber auf meinen Tests Es ist funktioniert:

CREATE TABLE SimpleTable( 
ProductKey [int] primary key, 
OrderDateKey [int] NOT NULL, 
DueDateKey [int] NOT NULL, 
ShipDateKey [int] NOT NULL) 

GO 

insert into SimpleTable values (1,2,3,4) 

CREATE nonclustered COLUMNSTORE INDEX IXTEST ON SimpleTable(ProductKey) 

Was fehlt mir hier? Ist die Dokumentation korrekt?

Hier ist meine SQL Server Version

Microsoft SQL Server 2016 (SP1-CU4) (KB4024305) - 13.0.4446.0 (X64) 16. Juli 2017 18.08.49 Copyright (c) Microsoft Corporation Developer Edition

Grüße

Antwort

0

ich bin auf der Bedeutung der Aussage nicht sicher, da die Einschränkungen noch auf dem Tisch geben werden, aber ich glaube, rein auf der Grundlage der Sprache, dass das, was gesagt wird, dass das ist Einschränkungen kann nicht enthalten sein, aber die Spalten können.

+0

Danke Chris, aber das habe ich nicht verstanden. Wie wird eine Einschränkung in einen Index aufgenommen? Die einzige Möglichkeit, wie ich denke, ist, diesen Index mit den Constraint-Spalten zu erstellen. –

+0

Ja, da bin ich selbst unsicher, aber ich denke, das ist der Punkt, es kann nicht aufgenommen werden. Ich denke, wenn Sie eine Spalte mit einem eindeutigen Index abfragen, kann der Abfrageoptimierer diesen Index nicht verwenden, wenn er sich entschieden hat, den nicht gruppierten Columnstore-Index zu verwenden. Beste Annahme! Vielleicht wird jemand anderes eine Einsicht haben, aber wie ich bereits erwähnt habe, sehe ich nicht die Bedeutung einer Einschränkung, die von einem Index "fehlt", da sie immer noch auf dem Tisch selbst existieren wird. –

Verwandte Themen