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

base de données :clé primaire, clusterisée ou non clusterisée

La déclaration suivante :

CONSTRAINT pk_UserID PRIMARY KEY (U_Id)

Est-ce le même que celui-ci :

CONSTRAINT pk_UserID PRIMARY KEY CLUSTERED (U_Id)

Vous ne pouvez avoir que la physicalité des données de la table triée par un des index, et par défaut cet index est celui utilisé pour la clé primaire (la contrainte d'unicité de la clé primaire est toujours supportée par un index).

Si vous souhaitez laisser l'ordre des données de la table à stocker selon un autre index, vous devez créer la clé primaire avec :

CONSTRAINT pk_UserID PRIMARY KEY NONCLUSTERED (U_Id)

Et créez ensuite l'index clusterisé avec :

CREATE CLUSTERED INDEX ix_Email ON Users (Email);