Wann sollte ich eine Tabellenvariable vs temporäre Tabelle in SQL Server verwenden?

Ich lerne mehr Details in der Tabellenvariablen. Es wird angegeben, dass sich temporäre Tabellen immer auf der Festplatte befinden und Tabellenvariablen sich im Speicher befinden. Das heißt, die Leistung von Tabellenvariablen ist besser als die von temporären Tabellen, da Tabellenvariablen weniger E / A-Operationen als temporäre Tabellen verwenden.

Aber manchmal, wenn eine Tabellenvariable zu viele Datensätze enthält, die nicht im Speicher enthalten sein können, wird die Tabellenvariable wie die temporäre Tabelle auf die Festplatte gestellt.

Aber ich weiß nicht, was die "zu vielen Aufzeichnungen" sind. 100.000 Datensätze? oder 1000.000 Datensätze? Woher weiß ich, ob sich eine von mir verwendete Tabellenvariable im Arbeitsspeicher oder auf der Festplatte befindet? Gibt es in SQL Server 2005 eine Funktion oder ein Tool zum Messen des Maßstabs der Tabellenvariablen oder zum Informieren, wann die Tabellenvariable aus dem Speicher auf den Datenträger gestellt wird?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage