Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Localizzatore di righe nell'indice non raggruppato

Se la tabella ha un indice cluster univoco , il "localizzatore riga" è costituito dalle colonne dell'indice cluster.

Con un indice cluster non univoco , il "localizzatore riga" è costituito dalle colonne dell'indice cluster, più un nuovo campo aggiunto da SQL Server per rendere univoco il riferimento. Il nuovo campo è invisibile agli utenti. Si chiama "uniqueifier" e consiste di quattro byte.

In una tabella senza un indice cluster (noto anche come heap), il "localizzatore di riga" è un RID o un identificatore di riga. Il RID punta a una posizione fisica. È costituito dall'identificatore del file (ID), dal numero di pagina e dal numero della riga nella pagina.

Una conseguenza pratica del "ricerca riga" è che ha senso avere una piccola chiave primaria per una tabella con molti indici :) Dettagli completi in questa pagina MSDN.