Ich habe einen nicht gruppierten Index, den ich löschen möchte (es ist ein Duplikat des gruppierten Indexes). Es wird jedoch von einer Fremdschlüsseleinschränkung verwendet. Ich möchte in der Lage sein zu identifizieren, welche Einschränkung den Index verwendet, damit ich es aktualisieren kann, um den Primärschlüsselindex zu verwenden.
Wenn ich versuche es fallen zu lassen:
%Vor%Ich bekomme einen Fehler:
Ein expliziter DROP INDEX ist auf dem Index 'dbo.MyTable.idx_duplicate' nicht erlaubt. Es wird für die FOREIGN KEY Constraint-Durchsetzung verwendet.
Ich habe versucht, den Schuldigen mit der folgenden Frage zu finden, aber kein Glück:
%Vor%Dies sagt Ihnen die Tabellen, den Fremdschlüssel und die beteiligten Spalten:
%Vor%Mir ist klar, dass dieser Beitrag ein paar Jahre alt ist, aber ich würde keinen solchen Index fallen lassen, ohne tiefer hinein zu gehen. Der nicht gruppierte Index ist NOT identisch mit dem gruppierten Index, auch wenn die Schlüsselspalten identisch sind. Der Leaf Level des NCI ist VIEL enger als der Leaf Level des CI und enthält daher viel mehr Zeilen pro Seite als das CI. Sie können tatsächlich ein Leistungsproblem verursachen (insbesondere für Einsätze in der anderen Tabelle), indem Sie das NCI ablegen.
Tags und Links sql sql-server