Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Erstellt ein Fremdschlüssel automatisch einen Index?

Ein Fremdschlüssel ist ein Constraint, eine Beziehung zwischen zwei Tabellen - das hat per se nichts mit einem Index zu tun.

Aber es ist eine bekannte Tatsache, dass es sehr sinnvoll ist, alle Spalten zu indizieren, die Teil einer Fremdschlüsselbeziehung sind, da Sie durch eine FK-Beziehung häufig eine zugehörige Tabelle suchen und bestimmte Zeilen basierend darauf extrahieren müssen ein einzelner Wert oder ein Wertebereich.

Es macht also durchaus Sinn, alle beteiligten Spalten in einem FK zu indizieren, aber ein FK an sich ist kein Index.

Sehen Sie sich Kimberly Tripps exzellenten Artikel „Wann hat SQL Server aufgehört, Indizes auf Fremdschlüsselspalten zu setzen?“ an.