Spezifikationen der maximalen Kapazität für SQL Server

Die folgende Tabelle gibt die maximale Größe und Anzahl verschiedener in SQL Server-Komponenten definierter Objekte an.

Datenbankmodul-Objekte

Die folgende Tabelle gibt die maximale Größe und Anzahl verschiedener in SQL Server-Datenbanken definierter oder in Transact-SQL-Anweisungen referenzierter Objekte an.

SQL Server-Datenbankmodul-Objekt

Maximale Größe/Anzahl SQL Server (32-Bit)

Maximale Größe/Anzahl SQL Server (64-Bit)

Batchgröße1

65.536 * Netzwerkpaketgröße

65.536 * Netzwerkpaketgröße

Bytes pro Spalte mit kurzen Zeichenfolgen

8.000

8.000

Bytes pro GROUP BY, ORDER BY

8.060

8.060

Bytes pro Indexschlüssel2

900

900

Bytes pro Fremdschlüssel

900

900

Bytes pro Primärschlüssel

900

900

Bytes pro Zeile8

8.060

8.060

Bytes im Quelltext einer gespeicherten Prozedur

Kleiner als Batchgröße oder 250 MB

Kleiner als Batchgröße oder 250 MB

Bytes pro varchar(max)-, varbinary(max)-, xml-, text- oder image-Spalte.

2^31-1

2^31-1

Zeichen pro ntext- oder nvarchar(max)-Spalte

2^30-1

2^30-1

Gruppierte Indizes pro Tabelle

1

1

Spalten in GROUP BY, ORDER BY

Begrenzung nur durch die Anzahl von Bytes

Begrenzung nur durch die Anzahl von Bytes

Spalten oder Ausdrücke in einer GROUP BY WITH CUBE- oder WITH ROLLUP-Anweisung

10

10

Spalten pro Indexschlüssel7

16

16

Spalten pro Fremdschlüssel

16

16

Spalten pro Primärschlüssel

16

16

Spalten pro Tabelle (keine breite Tabelle)

1.024

1.024

Spalten pro breiter Tabelle

30.000

30.000

Spalten pro SELECT-Anweisung

4.096

4.096

Spalten pro INSERT-Anweisung

4.096

4.096

Verbindungen pro Client

Höchstwert konfigurierter Verbindungen

Höchstwert konfigurierter Verbindungen

Datenbankgröße

524.272 Terabyte

524.272 Terabyte

Datenbanken pro Instanz von SQL Server

32.767

32.767

Dateigruppen pro Datenbank

32.767

32.767

Dateien pro Datenbank

32.767

32.767

Dateigröße (Daten)

16 Terabytes

16 Terabytes

Dateigröße (Protokoll)

2 Terabytes

2 Terabytes

Verweise auf Fremdschlüsseltabellen pro Tabelle4

253

253

Bezeichnerlänge (in Zeichen)

128

128

Instanzen pro Computer

50 Instanzen auf einem eigenständigen Server für alle SQL Server-Editionen außer "Workgroup". "Workgroup" unterstützt maximal 16 Instanzen pro Computer.

SQL Server unterstützt 25 Instanzen in einem Failovercluster.

50 Instanzen auf einem eigenständigen Server

25 Instanzen in einem Failovercluster

Länge einer Zeichenfolge, die SQL-Anweisungen enthält (Batchgröße)1

65.536 * Netzwerkpaketgröße

65.536 * Netzwerkpaketgröße

Sperren pro Verbindung

Maximale Anzahl Sperren pro Server

Maximale Anzahl Sperren pro Server

Sperren pro Instanz von SQL Server5

Bis zu 2.147.483.647

Begrenzung nur durch Arbeitsspeicher

Schachtelungsebenen gespeicherter Prozeduren6

32

32

Geschachtelte Unterabfragen

32

32

Schachtelungsebenen für Trigger

32

32

Nicht gruppierte Indizes pro Tabelle

999

999

Anzahl der unterschiedlichen Ausdrücke in der GROUP BY-Klausel bei Vorhandensein eines der folgenden Ausdrücke: CUBE, ROLLUP, GROUPING SETS, WITH CUBE, WITH ROLLUP

32

32

Anzahl der Gruppierungssätze, die von Operatoren in der GROUP BY-Klausel generiert wurden

4.096

4.096

Parameter pro gespeicherter Prozedur

2.100

2.100

Parameter pro benutzerdefinierter Funktion

2.100

2.100

REFERENCES pro Tabelle

253

253

Zeilen pro Tabelle

Begrenzung durch verfügbaren Speicherplatz

Begrenzung durch verfügbaren Speicherplatz

Tabellen pro Datenbank3

Begrenzung durch die Anzahl der Objekte in einer Datenbank

Begrenzung durch die Anzahl der Objekte in einer Datenbank

Partitionen pro partitionierter Tabelle oder partitioniertem Index

1.000

1.000

Statistiken für nicht indizierte Spalten

30.000

30.000

Tabellen pro SELECT-Anweisung

Begrenzung nur durch verfügbare Ressourcen

Begrenzung nur durch verfügbare Ressourcen

Trigger pro Tabelle3

Begrenzung durch die Anzahl der Objekte in einer Datenbank

Begrenzung durch die Anzahl der Objekte in einer Datenbank

Spalten pro UPDATE-Anweisung (breite Tabellen)

4.096

4.096

Benutzerverbindungen

32.767

32.767

XML-Indizes

249

249

1 Die Netzwerk-Paketgröße entspricht der Größe der TDS-Pakete (Tabular Data Stream), die für die Kommunikation zwischen Anwendungen und relationalem Database Engine (Datenbankmodul) verwendet werden. Die Standardpaketgröße beträgt 4 KB und wird durch die Konfigurationsoption network packet size (Netzwerkpaketgröße) gesteuert.

2 Die maximale Anzahl von Bytes in einem beliebigen Indexschlüssel kann den Wert 900 in SQL Server nicht überschreiten. Sie können einen Schlüssel mithilfe von Spalten variabler Länge definieren, deren maximale Größen zusammen mehr als 900 Bytes betragen, wenn niemals eine Zeile eingefügt wird, die in diesen Spalten mehr als 900 Bytes an Daten enthält. In SQL Server können Sie Nichtschlüsselspalten in den nicht gruppierten Index aufnehmen, um die maximale Indexschlüsselgröße von 900 Bytes zu vermeiden.

3 Zu den Datenbankobjekten zählen Tabellen, Sichten, gespeicherte Prozeduren, benutzerdefinierte Funktionen, Trigger, Regeln, Standardwerte und Einschränkungen. Die Summe aller Objekte in einer Datenbank kann 2.147.483.647 nicht übersteigen.

4Auch wenn eine Tabelle eine unbegrenzte Anzahl von FOREIGN KEY-Einschränkungen enthalten kann, werden maximal 253 empfohlen. In Abhängigkeit von der Hardwarekonfiguration, die SQL Server hostet, kann das Angeben weiterer FOREIGN KEY-Einschränkungen den Abfrageoptimierer bei der Verarbeitung stark beanspruchen.

5 Dieser Wert dient der statischen Sperrenzuordnung. Dynamische Sperren sind nur durch den Arbeitsspeicher beschränkt.

6 Wenn eine gespeicherte Prozedur auf mehr als 8 Datenbanken zugreift oder sich mehr als 2 Datenbanken überlappen, erhalten Sie einen Fehler.

7 Wenn die Tabelle einen oder mehrere XML-Indizes enthält, ist der Gruppierungsschlüssel der Benutzertabelle auf 15 Spalten beschränkt, das die XML-Spalte dem Gruppierungsschlüssel des primären XML-Index hinzugefügt wird. In SQL Server können Sie Nichtschlüsselspalten in den nicht gruppierten Index aufnehmen, um die Beschränkung auf maximal 16 Schlüsselspalten zu vermeiden. Weitere Informationen finden Sie unter Index mit eingeschlossenen Spalten.

8SQL Server unterstützt die Zeilenüberlaufspeicherung, sodass Spalten variabler Länge aus der Zeile verschoben werden können. Für Spalten variabler Länge, die aus der Zeile verschoben wurden, wird im Hauptdatensatz nur ein 24-Byte-Stamm gespeichert. Aus diesem Grund ist das tatsächlich gültige Zeilenlimit höher als in früheren Versionen von SQL Server. Weitere Informationen finden Sie unter "Zeilenüberlauf bei Daten über 8 KB" in der SQL Server-Onlinedokumentation.

Replikationsobjekte

Die folgende Tabelle gibt die maximale Größe und Anzahl verschiedener in der SQL Server-Replikation definierter Objekte an.

SQL Server-Replikationsobjekt

Maximale Größe/Anzahl SQL Server (32-Bit)

Maximale Größe/Anzahl SQL Server (64-Bit)

Artikel (Mergeveröffentlichung)

256

256

Artikel (Snapshot- oder Transaktionsveröffentlichung)

32.767

32.767

Spalten in einer Tabelle1 (Mergeveröffentlichung)

246

246

Spalten in einer Tabelle2 (SQL Server-Snapshot- oder -Transaktionsveröffentlichung)

1.000

1.000

Spalten in einer Tabelle2 (Oracle-Snapshot- oder -Transaktionsveröffentlichung)

995

995

Bytes für eine in einem Zeilenfilter verwendete Spalte (Mergeveröffentlichung)

1.024

1.024

Bytes für eine in einem Zeilenfilter verwendete Spalte (Snapshot- oder Transaktionsveröffentlichung)

8.000

8.000

1 Wenn Zeilennachverfolgung zur Konflikterkennung verwendet wird (Standard), kann die Basistabelle maximal 1.024 Spalten enthalten. Die Spalten müssen aber aus dem Artikel herausgefiltert werden, sodass maximal 246 Spalten veröffentlicht werden. Wenn Spaltennachverfolgung verwendet wird, kann die Basistabelle maximal 246 Spalten enthalten. Weitere Informationen zur Nachverfolgungsebene finden Sie im Abschnitt zur Nachverfolgungsebene unter Konflikterkennung und -lösung bei der Mergereplikation.

2 Die Basistabelle kann die maximal zulässige Anzahl von Spalten in der Veröffentlichungsdatenbank (1.024 für SQL Server) enthalten. Die Spalten müssen aber aus dem Artikel herausgefiltert werden, wenn sie das für den Veröffentlichungstyp angegebene Maximum überschreiten.