Maison >base de données >tutoriel mysql >Pouvez-vous créer des index sur des variables de table SQL Server 2000 ?
Présentation
Dans le développement de SQL Server, la question de savoir si les variables de table peuvent créer des index a toujours été une question courante. Cet article approfondit les détails des index de variables de table, en se concentrant sur SQL Server 2000.
Les index peuvent-ils être créés sur des variables de table ?
Pour SQL Server 2000, la réponse est oui. Des index peuvent être créés sur des variables de table à l'aide de méthodes implicites, principalement via l'utilisation de contraintes de clé unique ou de clé primaire.
Indexation basée sur des contraintes
Les contraintes de clé unique et de clé primaire créent implicitement des index uniques. La différence réside dans l'autorisation des valeurs nulles pour les colonnes participantes. La clé primaire doit être définie sur une colonne de valeur non nulle et la contrainte unique autorise les colonnes de valeur nulle.
Spécifier l'attribut d'index
Bien que l'implémentation physique d'un index créé par une contrainte soit déterminée par une valeur par défaut, elle peut être remplacée en spécifiant explicitement l'option CLUSTERED ou NONCLUSTERED dans la déclaration de contrainte. Cela permet un certain contrôle sur le type d'index créé.
Différents types d'index
Dans SQL Server 2000 - 2012, les types d'index suivants peuvent être créés implicitement sur des variables de table :
Vous ne pouvez pas utiliser de contraintes pour créer directement des index clusterisés et non clusterisés non uniques sur des variables de table.
Solution à un index non clusterisé non unique
Pour simuler un index non clusterisé non unique, créez un index unique sur une combinaison de la colonne pertinente et de la clé d'index clusterisé (la clé d'index clusterisé est de toute façon automatiquement ajoutée sur un index non unique).
Ajouter un identifiant unique manuellement
Pour les index clusterisés non uniques, vous pouvez ajouter manuellement une colonne IDENTITY comme identifiant unique. Cependant, cela n’est pas exactement équivalent à un index clusterisé non unique, car il affecte toutes les lignes, pas seulement celles qui nécessitent un caractère unique.
Conclusion
Dans SQL Server 2000, vous pouvez créer des index sur des variables de table en utilisant une approche basée sur les contraintes. Comprendre les différents types d'index et la manière dont ils sont implicitement implémentés peut aider à optimiser les requêtes impliquant des variables de table.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!