Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Den här artikeln visar maximala storlekar och antal olika objekt som definierats i SQL Server 2016 (13.x) och senare. Om du vill visa versionsgränser läser du Beräkningskapacitetsgränser per utgåva av SQL Server.
Information om SQL Server 2014 (12.x) finns i Maximal kapacitetsspecifikation för SQL Server 2014.
Databasmotorobjekt
Maximala värden för olika objekt som definierats i SQL Server-databaser eller som refereras i Transact-SQL-instruktioner.
| SQL Server Database Engine-objekt | Högsta värden för SQL Server (64-bitars) | Ytterligare information |
|---|---|---|
| Batchstorlek | 65 536 * (storlek på nätverkspaket) | Storleken på nätverkspaket är storleken på de TDS-paket (Tabular Data Stream) som används för att kommunicera mellan relationsdatabasmotorn och programmen. Standardpaketstorleken är 4 KB. Storlek på nätverkspaket styr det här konfigurationsalternativet. |
| Bytelängd för en sträng som innehåller Transact-SQL-instruktioner (batchstorlek) | 65 536 * (storlek på nätverkspaket) | Storleken på nätverkspaket är storleken på de TDS-paket (Tabular Data Stream) som används för att kommunicera mellan relationsdatabasmotorn och programmen. Standardpaketstorleken är 4 kB och styrs av konfigurationsalternativet för nätverkspaketstorlek. |
| Byte per kort strängkolumn | 8,000 | |
Byte per GROUP BY, ORDER BY |
8,060 | |
| Byte per indexnyckel | 900 byte för ett grupperat index. 1 700 byte för ett icke-grupperat index. För SQL Server 2014 (12.x) och tidigare stöds alla versioner 900 byte för alla indextyper. | Det maximala antalet byte i en klustrad indexnyckel får inte överstiga 900. För en icke-grupperad indexnyckel är maxvärdet 1 700 byte. Du kan definiera en nyckel med hjälp av kolumner med variabel längd vars maximala storlekar överstiger gränsen. De kombinerade datastorlekarna i dessa kolumner kan dock aldrig överskrida gränsen. I ett icke-grupperat index kan du inkludera extra icke-nyckelkolumner och de räknas inte mot storleksgränsen för nyckeln. Kolumner som inte är viktiga kan hjälpa vissa frågor att prestera bättre. |
| Byte per indexnyckel för minnesoptimerade tabeller | 2 500 byte för ett icke-grupperat index. Ingen gräns för ett hash-index, så länge alla indexnycklar får plats på rad. | I en minnesoptimerad tabell kan ett icke-grupperat index inte ha nyckelkolumner vars maximala deklarerade storlekar överstiger 2 500 byte. Det spelar ingen roll om de faktiska data i nyckelkolumnerna skulle vara kortare än de maximala deklarerade storlekarna. För en hash-indexnyckel finns det ingen hård gräns för storlek. För index på minnesoptimerade tabeller finns det inget begrepp med inkluderade kolumner, eftersom alla index i sig täcker alla kolumner. För en minnesoptimerad tabell, även om radstorleken är 8 060 byte, kan vissa kolumner med variabel längd lagras fysiskt utanför dessa 8 060 byte. Den maximala deklarerade storleken på alla nyckelkolumner för alla index i en tabell, plus eventuella ytterligare kolumner med fast längd i tabellen, måste dock få plats i 8 060 byte. |
| Byte per sekundärnyckel | 900 | |
| Byte per primärnyckel | 900 | |
| Byte per rad | 8,060 | SQL Server har stöd för lagring med rad-overflow, vilket gör att kolumner med variabel längd kan push-överföras utanför rad. Endast en rot på 24 byte lagras i huvudposten för kolumner med variabel längd som skickas ut från rad. Mer information finns i Stöd för stora rader. |
| Byte per rad i minnesoptimerade tabeller | 8,060 | Minnesoptimerade tabeller på SQL Server 2016 (13.x) och senare stöder lagring utanför rad. Kolumner med variabellängd skjuts bort från rad om den maximala storleken för alla kolumner i tabellen överskrider 8 060 byte. den här åtgärden är ett kompileringsbeslut. Endast en referens på 8 byte lagras på rad för kolumner som lagras utanför rad. Mer information finns i Tabell- och radstorlek i minnesoptimerade tabeller. |
| Byte i källtext för en lagrad procedur | Mindre batchstorlek eller 250 MB | |
Byte per varchar(max), varbinary(max), xml, texteller image kolumn |
2^31-1 | |
Tecken per ntext kolumn nvarchar(max) |
2^30-1 | |
| Grupperade index per tabell | 1 | |
Kolumner i GROUP BY, ORDER BY |
Begränsas endast av antalet byte | |
Kolumner eller uttryck i en eller GROUP BY WITH ROLLUP -GROUP BY WITH CUBEinstruktion |
10 | |
| Kolumner per indexnyckel | 32 | Om tabellen innehåller ett eller flera XML-index är klustringsnyckeln i användartabellen begränsad till 31 kolumner eftersom XML-kolumnen läggs till i klustringsnyckeln för det primära XML-indexet. Du kan inkludera icke-nyckelkolumner i ett icke-grupperat index för att undvika begränsningen av högst 32 nyckelkolumner. Mer information finns i Skapa index med inkluderade kolumner. |
| Kolumner per sekundärnyckel eller primärnyckel | 32 | |
Kolumner per INSERT instruktion |
4,096 | |
Kolumner per SELECT instruktion |
4,096 | |
| Kolumner per tabell | 1,024 | Tabeller som innehåller glesa kolumnuppsättningar innehåller upp till 30 000 kolumner. Se Använda kolumnuppsättningar. |
Kolumner per UPDATE instruktion |
4,096 | Olika gränser gäller för Använd kolumnuppsättningar. |
| Kolumner per vy | 1,024 | |
| Anslutningar per klient | Maximalt värde för konfigurerade anslutningar | |
| Databasstorlek | 524 272 terabyte | |
| Databaser per instans av SQL Server | 32,767 | |
| Filgrupper per databas | 32,767 | |
| Filgrupper per databas för minnesoptimerade data | 1 | |
| Filer per databas | 32,767 | |
| Filstorlek (data) | 16 terabyte | |
| Filstorlek (logg) | 2 terabyte | |
| Datafiler för minnesoptimerade data per databas | 4 096 i SQL Server 2014 (12.x). Gränsen är mindre strikt för SQL Server 2016 (13.x) och senare. | |
| Deltafil per datafil för minnesoptimerade data | 1 | |
| Tabellreferenser för sekundärnyckel per tabell | Utgående = 253. Inkommande = 10 000. |
Begränsningar finns i Skapa sekundärnyckelrelationer. |
| Identifierarlängd (i tecken) | 128 | |
| Instanser per dator | 50 instanser på en fristående server. 25 redundansklusterinstanser när du använder en delad klusterenhet som lagring. 50 redundansklusterinstanser med SMB-filresurser som lagringsalternativ. |
|
| Index per minnesoptimerad tabell | 999 startar SQL Server 2017 (14.x) och i Azure SQL Database. 8 i SQL Server 2016 (13.x) och SQL Server 2014 (12.x). |
|
| Lås per anslutning | Maximalt antal lås per server | |
| Lås per instans av SQL Server | Begränsas endast av minne | Det här värdet är för statisk låsallokering. Dynamiska lås begränsas endast av minne. |
| Kapslade lagrade procedurnivåer | 32 | Om en lagrad procedur har åtkomst till fler än 64 databaser eller fler än två databaser i interfoliering får du ett fel. |
| Kapslade underfrågor | 32 | |
| Kapslade transaktioner | 4,294,967,296 | |
| Kapslade utlösarnivåer | 32 | |
| Icke-grupperade index per tabell | 999 | |
Antal distinkta uttryck i GROUP BY -satsen när något av följande finns: CUBE, , ROLLUPGROUPING SETS, , WITH CUBE,WITH ROLLUP |
32 | |
Antal grupperingsuppsättningar som genereras av operatorer i GROUP BY -satsen |
4,096 | |
| Parametrar per lagrad procedur | 2,100 | |
| Parametrar per användardefinierad funktion | 2,100 | |
REFERENCES per tabell |
253 | |
| Rader per tabell | Begränsad av tillgängligt lagringsutrymme | |
| Tabeller per databas | Begränsas av totalt antal objekt i en databas | Objekt inkluderar tabeller, vyer, lagrade procedurer, användardefinierade funktioner, utlösare, regler, standardvärden och begränsningar. Summan av antalet alla objekt i en databas får inte överstiga 2 147 483 647. |
| Partitioner per partitionerad tabell eller index | 15,000 | |
| Statistik över icke-indexerade kolumner | 30,000 | |
Tabeller per SELECT instruktion |
Begränsas endast av tillgängliga resurser | |
| Utlösare per tabell | Begränsas av antalet objekt i en databas | Objekt inkluderar tabeller, vyer, lagrade procedurer, användardefinierade funktioner, utlösare, regler, standardvärden och begränsningar. Summan av antalet alla objekt i en databas får inte överstiga 2 147 483 647. |
| Användaranslutningar | 32,767 | |
| XML-index | 249 |
SQL Server-programobjekt på datanivå
Maximala värden för olika objekt som har testats i SQL Server-datanivåprogram (DAC).
| SQL Server DAC-objekt | Högsta värden för SQL Server (64-bitars) | Ytterligare information |
|---|---|---|
| Databaser per DAC | 1 | |
| Objekt per DAC | Begränsas av antalet objekt i en databas eller tillgängligt minne. | Typer av objekt som ingår i gränsen är användare, tabeller, vyer, lagrade procedurer, användardefinierade funktioner, användardefinierad datatyp, databasroller, scheman och användardefinierade tabelltyper. |
Replikeringsobjekt
Maximala värden för olika objekt som definierats i SQL Server-replikering.
| SQL Server Replication-objekt | Högsta värden för SQL Server (64-bitars) |
Ytterligare information |
|---|---|---|
| Artiklar (sammanslagningspublikation) | 2,048 | |
| Artiklar (ögonblicksbild eller transaktionspublikation) | 32,767 | |
| Kolumner i en tabell (sammanslagningspublikation) | 246 | Om radspårning används för konfliktidentifiering (standard) kan bastabellen innehålla högst 1 024 kolumner. Publikationen måste dock filtrera artikeln så att högst 246 kolumner publiceras. Om kolumnspårning används kan bastabellen innehålla högst 246 kolumner. |
| Kolumner i en tabell (SQL Server-ögonblicksbild eller transaktionspublikation) | 1,000 | Bastabellen kan innehålla det maximala antalet kolumner som kan tillåtas i SQL Server-publikationsdatabasen (1 024), men kolumner måste filtreras från artikeln om de överskrider det högsta angivna värdet för publikationstypen. |
| Kolumner i en tabell (Oracle-ögonblicksbild eller transaktionspublikation) | 995 | Bastabellen kan innehålla det maximala antalet kolumner som kan tillåtas i SQL Server-publikationsdatabasen (1 024), men kolumner måste filtreras från artikeln om de överskrider det högsta angivna värdet för publikationstypen. |
| Byte för en kolumn som används i ett radfilter (sammanslagningspublikation) | 1,024 | |
| Byte för en kolumn som används i ett radfilter (ögonblicksbild eller transaktionspublikation) | 8,000 |