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
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Pourquoi la souveraineté des données relève du contrôle et non de la géographie
- L’incident OpenAI–Hugging Face n’est pas la révolution que vous imaginez
- Pourquoi les PME ne peuvent plus se permettre de négliger la sécurité de leur parc d’imprimantes
- Ransomware : les identités compromises à l’origine de 79% des attaques
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
