Spezielle Tabellentypen
Neben der Standardrolle der grundlegenden benutzerdefinierten Tabellen bietet SQL Server 2005 die folgenden Typen von Tabellen, die innerhalb einer Datenbank speziellen Zwecken dienen:
- Partitionierte Tabellen
- Temporäre Tabellen
- Systemtabellen
Partitionierte Tabellen
Partitionierte Tabellen sind Tabellen, deren Daten horizontal in Einheiten aufgeteilt sind, die über mehrere Dateigruppen innerhalb einer Datenbank verteilt sein können. Durch die Partitionierung werden große Tabellen oder Indizes leichter zu verwalten, denn Sie können dadurch schnell und effizient auf Datenteilmengen zugreifen und sie verwalten, während die Integrität der gesamten Sammlung erhalten bleibt. In einem Partitionierungsszenario können Vorgänge wie z. B. das Laden von Daten aus einem OLTP-System in ein OLAP-System lediglich Sekunden beanspruchen und nicht Minuten oder Stunden, wie das in früheren Versionen der Fall war. Außerdem können Wartungsvorgänge, die an Datenteilmengen ausgeführt werden, effizienter ablaufen, weil sie nur auf die wirklich erforderlichen Daten abzielen und nicht auf die gesamte Tabelle.
Die Partitionierung einer Tabelle ist sinnvoll, wenn die Tabelle sehr groß ist oder wahrscheinlich sehr groß werden wird und wenn eine der folgenden Aussagen zutrifft:
- Die Tabelle enthält bereits oder wird künftig wahrscheinlich viele Daten enthalten, die auf unterschiedliche Weise verwendet werden.
- Abfragen oder Aktualisierungen der Tabelle können nicht mit der erwarteten Leistung durchgeführt werden, oder die Wartungskosten übersteigen die festgelegten Wartungsperioden.
Partitionierte Tabellen unterstützen alle Eigenschaften und Features, die vom Entwerfen und Abfragen von Standardtabellen bekannt sind, d. h. Einschränkungen, Standardwerte, Identitäts- und Timestampwerte, Trigger und Indizes. Daher sollten Sie, wenn Sie eine partitionierte Sicht implementieren wollen, die für einen Server lokal ist, stattdessen eine partitionierte Tabelle implementieren. Weitere Informationen, die Ihnen beim Verstehen, Entwerfen und Implementieren von partitionierten Tabellen helfen, finden Sie unter Partitionierte Tabellen und Indizes.
Temporäre Tabellen
Es gibt zwei Arten von temporären Tabellen: lokale und globale temporäre Tabellen. Lokale temporäre Tabellen sind nur für ihre Ersteller und nur für die Verbindung mit einer Instanz von SQL Server sichtbar, mit der die Tabellen erstmals erstellt werden oder mit der erstmals auf die Tabellen verwiesen wird. Lokale temporäre Tabellen werden gelöscht, nachdem der Benutzer die Verbindung mit der Instanz von SQL Server trennt. Globale temporäre Dateien sind nach ihrer Erstellung für alle Benutzer und für jede Verbindung sichtbar, und sie werden erst gelöscht, wenn alle Benutzer, die auf die Tabellen verweisen, die Verbindung mit einer Instanz von SQL Server getrennt haben.
Weitere Informationen zu temporären Tabellen finden Sie unter Grundlegendes zum Erstellen und Ändern von Tabellen.
Systemtabellen
SQL Server speichert die Daten, die die Konfiguration des Servers sowie alle seine Tabellen definieren, in einem bestimmten Satz von Tabellen, die als Systemtabellen bezeichnet werden. Benutzer können die Systemtabellen nicht direkt abfragen oder aktualisieren, außer über eine dedizierte Administratorverbindung (DAC, Dedicated Administrator Connection), die nur auf Anweisung des Microsoft-Kundendienstes verwendet werden sollte. Weitere Informationen finden Sie unter Verwenden einer dedizierten Administratorverbindung. Die Systemtabellen werden üblicherweise mit jeder neuen Version von SQL Server geändert. Anwendungen, die direkt auf Systemdateien verweisen, müssen eventuell umgeschrieben werden, damit sie auf eine neuere Version von SQL Server mit einer anderen Version der Systemtabellen aktualisiert werden können. Die in den Systemtabellen enthaltenen Informationen werden über die Katalogsichten verfügbar gemacht. Weitere Informationen finden Sie unter Systemtabellen (Transact-SQL).
Wichtig Die SQL Server 2005-Datenbankmodul-Systemtabellen wurden nur zum Zweck der Rückwärtskompatibilität als schreibgeschützte Sichten in SQL Server 2005 implementiert. Sie können mit den Daten in diesen Systemtabellen niemals direkt arbeiten. Es wird empfohlen, mit den Katalogsichten (Transact-SQL) auf die SQL Server-Metadaten zuzugreifen.