Découverte de SQL Server par la pratique pour les administrateurs expérimentés Module 4 : Stockage des données, Tables dans SQL Server Bertrand Audras Microsoft Technology Center Paris Division Développeurs et Plateforme dEntreprise Microsoft France
Objectifs Présenter les différents types de tables, d'index, de vues et de triggers Démontrer le fonctionnement d'une table partitionnée et d'un trigger
Table et index Les tables permettent de stocker et accéder aux données Différents types de tables: –Simple: les données sont enregistrées sans ordre spécifique –Triée: les données sont stockées selon l'ordre de l'index cluster –Partitionnée: les données sont regroupées en partitions selon un critère de répartition sur les valeurs –Temporaire: ces données de travail sont stockées dans une base de données spécifique (base tempdb) avec une durée de vie associée à la session Les index ont pour rôle d'optimiser l'accès aux données L'index Cluster permet de garantir l'ordre de stockage des données selon d'ordre de tri de l'index
Structure de l'index cluster Sysindexes Root node Intermediate level Leaf node / data pages A-Z W-ZA-DE-H… … Debra Andy Charlie
Stockage en page de 8Ko: Page de données, page d'index Header Row Directory Free Space Row Data Oracle Taille de page de 2Ko à 16Ko SQL Server Taille de page fixe à 8Ko
Comparaison des types d'index entre Oracle et Microsoft Index schemeOracleSQL Server B-tree UniqueYes B-tree Non uniqueYes B-tree CompositeYes (32 cols)Yes (16 cols) B-tree AscendingYes B-tree DescendingYes B-tree ClusterYes B-tree Reverse keyYesNo B-tree Key compressedYesNo B-tree Function basedYesNo B-tree Index organized tableYesYes (clustered) B-tree PartitionedYes BitmapYes (30 cols)No Bitmap JoinYesNo
Vues et triggers Les vues sont des structures présentant le résultat d'une requête simple ou complexe (jointure multiple, colonne calculée…) Les vues possédant un index sont les seules à stocker des données Les triggers se déclenchent sur les opérations de DML et de DDL dans SQL Server 2005: –Insert, update, delete –Create, alter, drop, grant, revoke, deny –Remplacement d'un ordre de mise à jour (instead of) –Plusieurs triggers sur la même opération
Comparaison des types de trigger entre Oracle et Microsoft FeatureOracleSQL Server DML-INSERTYes DML-UPDATEColumn/RowRow DML-DELETEYes Timing-BEFOREYesYes (INSTEAD OF) Timing-AFTERYes LevelRow/StatementRow Views-INSTEAD OFYes Multiple triggers per actionYesYes (first/last specified) DDL TriggersNoYes Single trigger for multiple actionsYes
Démonstrations 1.Table partitionnée 2.Trigger
Ressources SQL Server 2005 Le site français sur SQL Server 2005 (livres blancs, webcasts en français) Blog francophone (actualités, trucs & astuces en français) Le site Technet français (ressources techniques en français) Le site global sur SQL Server Le site Technet global (SQL Server TechCenter) SQL Server Developer Center
Votre potentiel, notre passion… A bientôt et merci davoir suivi cette vidéo... © 2006 Microsoft France