Maintenant que nous avons vu ce qu'on peut et ne peut pas mettre à l'intérieur de la définition d'une vue, vous voilà prêt à créer une vue indexée. La première étape consiste à définir la vue, comme décrit dans le listing 1. Remarquez la clause with SCHEMABINDING et la spécification
Créer une vue indexée
du nom du propriétaire (dbo) de
la table. à€ ce stade, on dispose d’une vue classique (une instruction SELECT qui
n’utilise aucun espace de stockage. En fait, si on exécute la procédure cataloguée
système sp_spaceused sur cette vue, on obtient le message d’erreur suivant :
Server: Msg 15235, Level 16, State 1,
Procedure sp_spaceused, Line 91
Views do not have space allocated.
Pour créer une vue indexée, il est nécessaire de créer un index clusterisé unique
sur la vue. L’instruction ci-après définit un index clusterisé unique, Product_Totals,
sur la vue :
CREATE UNIQUE CLUSTERED INDEX PV_IDX on Product_Totals(productid)
Après avoir créé l’index, on peut à nouveau exécuter la procédure sp_spaceused.
On obtient des résultats semblables à ceux de la figure 1.
Les données qui composent la vue indexée sont persistantes, la vue indexée enregistrant
les données au niveau feuille de l’index clusterisé. On pourrait construire quelque
chose de similaire en utilisant des tables temporaires pour enregistrer les données
intéressantes. Toutefois, une table temporaire est statique, et ne reflète pas
les changements intervenant aux niveau des données sous-jacentes. En revanche,
SQL Server maintient les vues indexées automatiquement, en mettant à jour les
informations entreposées dans l’index clusterisé chaque fois qu’un utilisateur
modifie des données affectant la vue.
Après avoir créé l’index clusterisé unique, on peut créer plusieurs index non
clusterisés sur la vue. En utilisant le paramètre IsIndexed de la fonction ObjectProperty,
on peut déterminer si une vue est indexée. Pour la vue indexée Total_Products,
l’instruction suivante retourne un 1 (est indexée) :
SELECT ObjectProperty(object_id (‘Product_Totals’), ‘IsIndexed’)
Notez que dans la version bêta 1 l’exécution de la procédure cataloguée système
sp_help sur la vue ne rapporte pas la vue comme étant indexée, et ne montre aucun
des index. Cependant, l’exécution de la procédure cataloguée sp_helpindex sur
la vue renvoie des informations exhaustives quel que soit l’index de la vue.
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Adapter la sécurité OT aux réalités de l’industrie
- Les applications financières sont le terrain privilégié de la fraude
- Compromission des identités numériques : la panne invisible qui met les entreprises à l’arrêt
- Tendances Supply Chain : investir dans la technologie pour répondre aux nouvelles attentes clients
Articles les + lus
DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
Adapter la sécurité OT aux réalités de l’industrie
Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
Mixité dans la Tech : en 2026, un choix de souveraineté stratégique
Analyse Patch Tuesday Mars 2026
À la une de la chaîne Tech
- DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
- Adapter la sécurité OT aux réalités de l’industrie
- Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
- Mixité dans la Tech : en 2026, un choix de souveraineté stratégique
- Analyse Patch Tuesday Mars 2026
