Skip to main content
TechNet
Spécifications des capacités maximales pour SQL Server
 

Date de publication : août 2016

S’applique à : SQL Server 2016

Les tableaux suivants présentent la taille maximale et le nombre maximal des différents objets définis dans les composants SQL Server . Pour naviguer jusqu'à la table d'une technologie SQL Server , cliquez sur son lien :

Objets du moteur de base de données SQL Server

Objets utilitaires SQL Server

Objets d'application de la couche Données SQL Server

Objets de réplication SQL Server

Taille maximale et nombre maximal des différents objets définis dans les bases de données SQL Server ou référencés dans les instructions Transact-SQL .

SQL Server Moteur de base de données objetTailles maximales/nombres maximaux SQL Server (64-bit)Informations supplémentaires
Taille du lot65 536 * Taille des paquets réseauLa taille des paquets réseau représente la taille des paquets TDS (Tabular Data Stream) utilisés pour la communication entre des applications et le Moteur de base de données relationnel. La taille par défaut s'élève à 4 Ko ; elle est contrôlée par l'option de configuration Taille du paquet réseau.
Octets par colonne de chaîne courte8,000
Octets par clause GROUP BY, ORDER BY8,060
Octets par clé d’index900 octets pour un index cluster. 1 700 pour un index non cluster.Le nombre maximal d’octets dans une clé d’index cluster s’élève à 900 dans SQL Server. Pour une clé d’index non cluster, la valeur maximale est 1700 octets.

Vous pouvez définir une clé à l’aide de colonnes de longueur variable dont les tailles maximales, additionnées, dépasse la limite. Toutefois, la taille combinée des données de ces colonnes ne peut jamais dépasser la limite.

Dans un index non cluster, vous pouvez inclure des colonnes non-clés supplémentaires. Elles n’entrent pas en compte pour la limite de taille de la clé. Les colonnes non-clés peuvent améliorer les performances de certaines requêtes.
Octets par clé d’index pour les tables optimisées en mémoire2500 octets pour un index non cluster. Aucune limite pour un index de hachage, tant que toutes les clés d’index s’ajustent sur la ligne.Sur une table optimisée en mémoire, un index non cluster ne peut pas avoir de colonnes clés dont la taille maximale déclarée dépasse 2500 octets. Peu importe que la taille des données réelles dans les colonnes clés soit inférieure aux tailles maximales déclarées.

Pour une clé d’index de hachage, il n’existe aucune limite de taille.

Pour les index sur les tables optimisées en mémoire, il n’existe pas de concept de colonnes incluses, puisque tous les index couvrent, par nature, toutes les colonnes.

Pour une table optimisée en mémoire, même si la taille de ligne est de 8060 octets, certaines colonnes de longueur variable peuvent être physiquement stockées en dehors de ces 8060 octets. Toutefois, les tailles maximales déclarés de toutes les colonnes clés pour tous les index sur une table, plus les éventuelles colonnes de longueur fixe supplémentaires dans la table, doivent tenir dans les 8060 octets.
Octets par clé étrangère900
Octets par clé primaire900
Octets par ligne8060SQL Server prend en charge le stockage avec dépassement de ligne, qui permet d’envoyer hors ligne les colonnes de longueur variable. Seule une racine de 24 octets est stockée dans l'enregistrement principal des colonnes de longueur variable envoyées hors ligne ; par conséquent, la limite effective par ligne est supérieure dans les versions antérieures de SQL Server. Pour plus d'informations, consultez la rubrique « Données de dépassement de ligne de plus de 8 Ko » dans la documentation en ligne de SQL Server.
Octets par ligne dans les tables optimisées en mémoire8,060À compter de SQL Server 2016, les tables optimisées en mémoire prennent en charge le stockage hors ligne. Les colonnes de longueur variable sont envoyées hors ligne si la taille maximale de toutes les colonnes dans la table dépasse 8060 octets. Cette décision est prise au moment de la compilation. Seule une référence de huit octets est stockée dans la ligne pour les colonnes stockées hors ligne. Pour plus d’informations, consultez Taille de la table et des lignes dans les tables optimisées en mémoire.
Octets dans le texte source d'une procédure stockéeTaille de lot inférieure ou 250 Mo
Octets par colonne varchar(max), varbinary(max), xml, text ou image2^31-1
Caractères par colonne ntext ou nvarchar (max)2^30-1
Index cluster par table1
Colonnes dans les clauses GROUP BY, ORDER BYLimité uniquement par le nombre d'octets
Colonnes ou expressions dans une instruction GROUP BY WITH CUBE ou WITH ROLLUP10
Colonnes par clé d’index32Si la table contient au moins un index XML, la clé de clustering de la table d’utilisateur est limitée à 31 colonnes, car la colonne XML est ajoutée à la clé de clustering du principal index XML. Dans SQL Server, vous pouvez inclure des colonnes non-clés dans un index non cluster pour éviter la limitation à un maximum de 32 colonnes clés. Pour plus d’informations, consultez Créer des index avec colonnes incluses.
Colonnes par clé étrangère16
Colonnes par clé primaire16
Colonnes par tableau non large1,024
Colonnes par tableau large30,000
Colonnes par instruction SELECT4,096
Colonnes par instruction INSERT4096
Connexions par clientValeur maximale des connexions configurées
Taille de la base de données524 272 téraoctets
Bases de données par instance de SQL Server32,767
Groupes de fichiers par base de données32,767
Groupes de fichiers par base de données pour les données optimisées en mémoire1
Fichiers par base de données32,767
Taille de fichier (données)16 téraoctets
Taille de fichier (journal)2 téraoctets
Fichiers de données pour les données optimisées en mémoire par base de données4.096
Fichier delta par fichier de données pour les données optimisées en mémoire1
Références de table de clé étrangère par tableSortantes = 253. Entrantes = 10 000.Pour connaître les restrictions associées, consultez Create Foreign Key Relationships.
Longueur d'identificateur (en caractères)128
Instances par ordinateur50 instances sur un serveur autonome.

25 instances sur un cluster de basculement si vous utilisez un disque de cluster partagé, car l'option stockée pour votre installation de cluster SQL Server prend en charge 50 instances sur un cluster de basculement si vous choisissez les partages SMB comme option de stockage de votre installation de cluster.
Index par table optimisée en mémoire8
Longueur d’une chaîne contenant des instructions SQL (taille du traitement)65 536 * Taille des paquets réseauLa taille des paquets réseau représente la taille des paquets TDS (Tabular Data Stream) utilisés pour la communication entre des applications et le Moteur de base de données relationnel. La taille par défaut s'élève à 4 Ko ; elle est contrôlée par l'option de configuration Taille du paquet réseau.
Verrous par connexionVerrous maximaux par serveur
Verrous par instance de SQL ServerLimité uniquement par la mémoireCette valeur s’applique à l’allocation de verrouillage statique. Les verrous dynamiques sont uniquement limités par la mémoire.
Niveaux d’imbrication des procédures stockées32Si une procédure stockée accède à plus de 64 bases de données ou à plus de 2 bases entrelacées, vous recevez un message d’erreur.
Sous-requêtes imbriquées32
Niveaux de déclencheurs imbriqués32
Index non cluster par table999
Nombre d'expressions distinctes dans la clause GROUP BY lorsque l'un des éléments suivants est présent : CUBE, ROLLUP, GROUPING SETS, WITH CUBE, WITH ROLLUP32
Nombre de jeux de regroupement générés par les opérateurs dans la clause GROUP BY4,096
Paramètres par procédure stockée2,100
Paramètres par fonction définie par l'utilisateur2,100
REFERENCES par table253
Lignes par tableLimité par le stockage disponible
Tables par base de donnéesLimité par le nombre d'objets dans une base de donnéesLes objets de base de données comprennent des tables, des vues, des procédures stockées, des fonctions définies par l’utilisateur, des déclencheurs, des règles, des valeurs par défaut et des contraintes. Au total, le nombre de tous les objets d'une base de données ne peut pas dépasser 2 147 483 647.
Partitions par table ou index partitionné15,000
Statistiques sur les colonnes non indexées30,000
Tables par instruction SELECTLimité uniquement par les ressources disponibles
Déclencheurs par tableLimité par le nombre d'objets dans une base de donnéesLes objets de base de données comprennent des tables, des vues, des procédures stockées, des fonctions définies par l’utilisateur, des déclencheurs, des règles, des valeurs par défaut et des contraintes. Au total, le nombre de tous les objets d'une base de données ne peut pas dépasser 2 147 483 647.
Colonnes par instruction UPDATE (tableaux larges)4096
Connexions utilisateur32 767
Index XML249

Taille maximale et nombre maximal des différents objets testés dans l’utilitaire SQL Server .

SQL Server Objet utilitaireTailles maximales/nombres maximaux SQL Server (64-bit)
Ordinateurs (ordinateurs physique ou ordinateurs virtuels) par utilitaire SQL Server100
Instances de SQL Server par ordinateur5
Nombre total d'instances de SQL Server par utilitaire SQL Server200*
Bases de données utilisateur par instance de SQL Server, notamment les applications de la couche Données50
Nombre total de bases de données utilisateur par utilitaire SQL Server1,000
Groupes de fichiers par base de données1
Fichiers de données par groupe de fichiers1
Fichiers journaux par base de données1
Volumes par ordinateur3

Taille maximale et nombre maximal des différents objets testés dans les applications de la couche Données (DAC) SQL Server.

SQL Server Object DACTailles maximales/nombres maximaux SQL Server (64-bit)
Bases de données par DAC1
Objets par DAC*Limité par le nombre d'objets dans une base de données ou la mémoire disponible.
  • Les types d’objets inclus dans la limite sont des utilisateurs, des tables, des vues, des procédures stockées, des fonctions définies par l’utilisateur, des types de données définis par l’utilisateur, des rôles de base de données, des schémas et des types de table définis par l’utilisateur.

Taille maximale et nombre maximal des différents objets définis dans la réplication SQL Server .

SQL Server Objet de réplicationTaille maximale/nombre maximal dans SQL Server (64 bits)
Articles (publication de fusion)256
Articles (publication d'instantané ou transactionnelle)32767
Colonnes dans une table* (publication de fusion)246
Colonnes dans une table** (publication d’instantané ou transactionnelle SQL Server)1000
Colonnes dans une table** (publication d’instantané ou transactionnelle Oracle)995
Octets pour une colonne utilisée dans un filtre de lignes (publication de fusion)1024
Octets pour une colonne utilisée dans un filtre de lignes (publication d'instantané ou transactionnelle)8000
  • Si le suivi de lignes est utilisé pour la détection de conflits (valeur par défaut), la table de base peut inclure 1 024 colonnes au maximum, mais les colonnes doivent être filtrées à partir de l’article afin que 246 colonnes au maximum soient publiées. Si le suivi de colonnes est utilisé, la table de base peut inclure 246 colonnes au maximum.

** La table de base peut inclure le nombre maximal de colonnes autorisées dans la base de données de publication (1 024 pour SQL Server), mais les colonnes doivent être filtrées à partir de l’article si elles sont plus nombreuses que le maximum spécifié pour le type de publication.

Configurations matérielle et logicielle requises pour l’installation de SQL Server 2016
Paramètres de l'outil d'analyse de configuration système
Fonctionnalités et tâches de l'utilitaire SQL Server