Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Localisateur de ligne dans un index non clusterisé

Si la table a un index clusterisé unique , le "localisateur de lignes" est constitué des colonnes de l'index clusterisé.

Avec un index clusterisé non unique , le "localisateur de ligne" se compose des colonnes de l'index clusterisé, plus un nouveau champ que SQL Server ajoute pour rendre la référence unique. Le nouveau champ est invisible pour les utilisateurs. Il s'appelle "unifieur" et se compose de quatre octets.

Dans une table sans index clusterisé (alias un tas), le "localisateur de ligne" est un RID ou un identifiant de ligne. Le RID pointe vers un emplacement physique. Il se compose de l'identificateur de fichier (ID), du numéro de page et du numéro de la ligne sur la page.

Une conséquence pratique du "localisateur de ligne" est qu'il est logique d'avoir une petite clé primaire pour une table avec beaucoup d'index :) Tous les détails sur cette page MSDN.