Specifiche di capacità massima per SQL Server

Nelle tabelle seguenti vengono indicati le dimensioni e i numeri massimi dei diversi oggetti definiti nei componenti di SQL Server. Per navigare fino alla tabella per una tecnologia SQL Server, fare clic sul relativo collegamento:

Oggetti Motore di database di SQL Server

Oggetti di Utilità SQL Server

Oggetti applicazione livello dati di SQL Server

Oggetti di replica di SQL Server

Oggetti del Motore di database

Nella tabella seguente vengono indicati le dimensioni e i numeri massimi dei diversi oggetti definiti nei database di SQL Server o a cui si fa riferimento nelle istruzioni Transact-SQL.

Oggetto Motore di database di SQL Server

Dimensioni/numeri massimi per SQL Server (32 bit)

Dimensioni/numeri massimi per SQL Server (64 bit)

Dimensioni di batch1

65.536 * dimensioni del pacchetto di rete

65.536 * dimensioni del pacchetto di rete

Byte per ogni colonna di stringhe brevi

8,000

8,000

Byte per ogni clausola GROUP BY, ORDER BY

8,060

8,060

Byte per ogni chiave di indice2

900

900

Byte per ogni chiave esterna

900

900

Byte per ogni chiave primaria

900

900

Byte per ogni riga8

8,060

8,060

Byte nel testo di origine di una stored procedure

Minore delle dimensioni batch o 250 MB

Minore delle dimensioni batch o 250 MB

Byte per ogni colonna varchar(max), varbinary(max), xml, text o image

2^31-1

2^31-1

Caratteri per ogni colonna ntext o nvarchar(max)

2^30-1

2^30-1

Indici cluster per tabella

1

1

Colonne in GROUP BY, ORDER BY

Limitato solo dal numero di byte

Limitato solo dal numero di byte

Colonne o espressioni in un'istruzione GROUP BY WITH CUBE o WITH ROLLUP

10

10

Colonne per ogni chiave di indice7

16

16

Colonne per ogni chiave esterna

16

16

Colonne per ogni chiave primaria

16

16

Colonne per ogni tabella non estesa in larghezza

1,024

1,024

Colonne per ogni tabella estesa in larghezza

30,000

30,000

Colonne per ogni istruzione SELECT

4,096

4,096

Colonne per ogni istruzione INSERT

4096

4096

Connessioni per ogni client

Valore massimo delle connessioni configurate

Valore massimo delle connessioni configurate

Dimensioni di database

524.272 terabyte

524.272 terabyte

Database per ogni istanza di SQL Server

32,767

32,767

Filegroup per ogni database

32,767

32,767

File per ogni database

32,767

32,767

Dimensioni di file (dati)

16 terabyte

16 terabyte

Dimensioni file (log)

2 terabyte

2 terabyte

Riferimenti alla tabella della chiave esterna per ogni tabella4

253

253

Lunghezza di identificatore (in caratteri)

128

128

Istanze per ogni computer

50 istanze in un server autonomo per tutte le edizioni di SQL Server

SQL Server supporta 25 istanze su un cluster di failover durante l'utilizzo di un disco di cluster condiviso come opzione archiviata per l'installazione del cluster, SQL Server supporta 50 istanze su un cluster di failover se si scelgono condivisioni file SMB come opzione di archiviazione per l'installazione del cluster. Per ulteriori informazioni, vedere Tipi di archiviazione per i file di dati.

50 istanze in un server autonomo.

25 istanze su un cluster di failover durante l'utilizzo di un disco di cluster condiviso come opzione archiviata per l'installazione del cluster, SQL Server supporta 50 istanze su un cluster di failover se si scelgono condivisioni file SMB come opzione di archiviazione per l'installazione del cluster. Per ulteriori informazioni, vedere Tipi di archiviazione per i file di dati.

Lunghezza di una stringa contenente istruzioni SQL (dimensioni di batch)1

65.536 * dimensioni del pacchetto di rete

65.536 * dimensioni del pacchetto di rete

Blocchi per ogni connessione

Numero massimo di blocchi per ogni server

Numero massimo di blocchi per ogni server

Blocchi per ogni istanza di SQL Server5

Fino a 2.147.483.647

Limitato solo dalla memoria

Livelli di nidificazione delle stored procedure6

32

32

Sottoquery nidificate

32

32

Livelli di nidificazione dei trigger

32

32

Indici non cluster per tabella

999

999

Numero di espressioni distinte nella clausola GROUP BY quando è presente una delle seguenti opzioni: CUBE, ROLLUP, GROUPING SETS, WITH CUBE o WITH ROLLUP

32

32

Numero di set di raggruppamento generati dagli operatori nella clausola GROUP BY

4,096

4,096

Parametri per ogni stored procedure

2,100

2,100

Parametri per ogni funzionalità definita dall'utente

2,100

2,100

REFERENCES per ogni tabella

253

253

Righe per ogni tabella

Limitato dall'archiviazione disponibile

Limitato dall'archiviazione disponibile

Tabelle per ogni database3

Limitato dal numero di oggetti di un database

Limitato dal numero di oggetti di un database

Partizioni per ogni tabella o indice partizionato

1,000

Nota importanteImportante

La creazione di una tabella o di un indice con più di 1000 partizioni è possibile in un sistema a 32 bit, ma non è supportata.

15,000

Statistiche relative a colonne non indicizzate

30,000

30,000

Tabelle per ogni istruzione SELECT

Limitato solo dalle risorse disponibili

Limitato solo dalle risorse disponibili

Trigger per ogni tabella3

Limitato dal numero di oggetti di un database

Limitato dal numero di oggetti di un database

Colonne per ogni istruzione UPDATE (tabelle estese in larghezza)

4096

4096

Connessioni utente

32,767

32,767

Indici XML

249

249

1Le dimensioni dei pacchetti di rete corrispondono alle dimensioni dei pacchetti del flusso TDS (Tabular Data Stream) utilizzati per le comunicazioni tra applicazioni e Motore di database relazionale. La dimensione predefinita del pacchetto è 4 KB e viene controllata dall'opzione di configurazione network packet size.

2Il numero massimo di byte di una chiave di indice non può essere maggiore di 900 in SQL Server. È possibile definire una chiave utilizzando colonne di lunghezza variabile le cui dimensioni massime sono maggiori di 900, a condizione che non vengano inserite nelle colonne righe con più di 900 byte di dati. In SQL Server è possibile includere in un indice non cluster colonne non chiave per evitare di raggiungere la dimensione massima di 900 byte consentita per le chiavi di indice.

3Gli oggetti di database possono essere tabelle, viste, stored procedure, funzionalità definite dall'utente, trigger, regole, impostazioni predefinite e vincoli. La somma del numero di tutti gli oggetti in un database non può essere maggiore di 2.147.483.647.

4Anche se una tabella può contenere un numero illimitato di vincoli FOREIGN KEY, il numero massimo consigliato è 253. A seconda della configurazione hardware che ospita SQL Server, la specifica di altri vincoli FOREIGN KEY può risultare dispendiosa in termini di elaborazione da parte di Query Optimizer.

5Questo valore si riferisce all'allocazione di blocchi statici. I blocchi dinamici sono limitati solo dalla memoria.

6Se una stored procedure esegue l'accesso a più di 64 database o a più di 2 database in interfoliazione, verrà generato un errore.

7Se la tabella contiene uno o più indici XML, la chiave di clustering della tabella utente viene limitata a 15 colonne, poiché la colonna XML viene aggiunta alla chiave di clustering dell'indice XML primario. In SQL Server è possibile includere in un indice non cluster colonne non chiave per evitare di raggiungere il limite massimo di 16 colonne chiave. Per ulteriori informazioni, vedere Creare indici con colonne incluse.

8SQL Server supporta l'archiviazione dei dati di overflow della riga, che consente di spostare le colonne di lunghezza variabile all'esterno delle righe. Solo una radice di 24 byte viene archiviata nel record principale per le colonne di lunghezza variabile spostate all'esterno di righe. Di conseguenza, il limite delle righe effettivo è maggiore di quello delle versioni precedenti di SQL Server. Per ulteriori informazioni, vedere l'argomento "Dati di overflow della riga che superano 8 KB" nella documentazione online di SQL Server.

Oggetti di Utilità SQL Server

Nella tabella seguente vengono indicati le dimensioni e i numeri massimi dei diversi oggetti sottoposti a test in Utilità SQL Server.

Oggetto di Utilità SQL Server

Dimensioni/numeri massimi per SQL Server (32 bit)

Dimensioni/numeri massimi per SQL Server (64 bit)

Computer (computer fisici o macchine virtuali) per Utilità SQL Server

100

100

Istanze di SQL Server per ogni computer

5

5

Numero complessivo di istanze di SQL Server per Utilità SQL Server

2001

2001

Database utente per ogni istanza di SQL Server, incluse applicazioni livello dati

50

50

Numero complessivo di database utente per Utilità SQL Server

1,000

1,000

Filegroup per ogni database

1

1

File di dati per filegroup

1

1

File di log per ogni database

1

1

Volumi per ogni computer

3

3

1 Il numero massimo di istanze gestite di SQL Server supportate da SQL Server Utility possono variare in base alla configurazione hardware del server. Per informazioni introduttive, vedere Attività e funzionalità di Utilità SQL Server. Il punto di controllo dell'utilità di SQL Server non è disponibile in tutte le edizione di SQL Server 2012. Per un elenco delle funzionalità supportate dalle edizioni di SQL Server, vedere Funzionalità supportate dalle edizioni di SQL Server 2012 (https://go.microsoft.com/fwlink/?linkid=232473).

Oggetti applicazione livello dati di SQL Server

Nella tabella seguente vengono indicati le dimensioni e i numeri massimi dei diversi oggetti sottoposti a test nelle applicazioni livello dati (DAC) di SQL Server.

Oggetto applicazione livello dati di SQL Server

Dimensioni/numeri massimi per SQL Server (32 bit)

Dimensioni/numeri massimi per SQL Server (64 bit)

Database per ogni applicazione livello dati

1

1

Oggetti per ogni applicazione livello dati1

Limitati dal numero di oggetti in un database o dalla memoria disponibile.

Limitati dal numero di oggetti in un database o dalla memoria disponibile.

1I tipi di oggetti inclusi nel limite sono utenti, tabelle, viste, stored procedure, funzioni definite dall'utente, tipi di dati definiti dall'utente, ruoli di database, schemi e tipi di tabella definiti dall'utente.

Oggetti di replica

Nella tabella seguente vengono indicati le dimensioni e i numeri massimi dei diversi oggetti definiti nella replica di SQL Server.

Oggetto di replica di SQL Server

Dimensioni/numeri massimi per SQL Server (32 bit)

Dimensioni/numeri massimi per SQL Server (64 bit)

Articoli (pubblicazione di tipo merge)

256

256

Articoli (pubblicazione snapshot o transazionale)

32,767

32,767

Colonne in una tabella1 (pubblicazione di tipo merge)

246

246

Colonne in una tabella2 (pubblicazione snapshot o transazionale di SQL Server)

1,000

1,000

Colonne in una tabella2 (pubblicazione snapshot o transazionale di Oracle)

995

995

Byte per una colonna utilizzata in un filtro di riga (pubblicazione di tipo merge)

1,024

1,024

Byte per una colonna utilizzata in un filtro di riga (pubblicazione snapshot o transazionale)

8,000

8,000

1Se viene utilizzato il rilevamento a livello di riga per il rilevamento dei conflitti (impostazione predefinita), la tabella di base può contenere al massimo 1.024 colonne, ma le colonne devono essere filtrate dall'articolo affinché venga pubblicato un massimo di 246 colonne. Se viene utilizzato il rilevamento a livello di colonna, nella tabella di base possono essere incluse al massimo 246 colonne.

2La tabella di base può includere il numero massimo di colonne consentito nel database di pubblicazione (1.024 per SQL Server), ma le colonne devono essere filtrate dall'articolo se superano il numero specificato per il tipo di pubblicazione.

Vedere anche

Riferimento

Requisiti hardware e software per l'installazione di SQL Server 2012

Parametri di controllo di Controllo configurazione sistema

Concetti

Attività e funzionalità di Utilità SQL Server