Bases de données système

SQL Server inclut les bases de données système suivantes.

Bases de données système

Description

Base de données master

Enregistre toutes les informations système relatives à une instance de SQL Server.

Base de données msdb

Utilisée par l'Agent SQL Server pour planifier les alertes et les travaux.

Base de données model

Fait office de modèle pour toutes les bases de données créées sur l'instance de SQL Server. Les modifications apportées à la base de données model, telles que la taille de la base de données, le classement, le mode de récupération et les autres options de base de données, s'appliquent aux bases de données créées par la suite.

Base de données Resource

Base de données en lecture seule contenant des objets système fournis avec SQL Server. Les objets système sont conservés physiquement dans la base de données Resource, mais ils figurent logiquement dans le schéma sys de chaque base de données.

Base de données tempdb

Espace de travail destiné à accueillir les objets temporaires ou les ensembles de résultats intermédiaires.

Modification des données système

SQL Server ne permet pas aux utilisateurs de mettre directement à jour les informations contenues dans les objets système, tels que les tables système, les procédures stockées système et les vues de catalogue. En revanche, SQL Server propose un jeu complet d'outils d'administration qui permettent aux utilisateurs d'administrer complètement leur système et de gérer tous les utilisateurs et objets d'une base de données. Il s'agit des outils suivants :

  • Utilitaires d'administration, tels que SQL Server Management Studio.

  • API SQL-SMO. Cet outil permet aux programmeurs d'inclure des fonctionnalités complètes visant à administrer SQL Server dans leurs applications.

  • Scripts et procédures stockées Transact-SQL. Ceux-ci peuvent utiliser des procédures stockées système et des instructions DDL Transact-SQL.

Ces outils prémunissent les applications contre les modifications des objets système. Par exemple, SQL Server est parfois amené à modifier les tables système dans les nouvelles versions de SQL Server afin de prendre en charge les nouvelles fonctionnalités ajoutées à cette version. Les applications qui lancent des instructions SELECT référençant directement les tables système dépendent souvent de l'ancien format des tables système. Il est possible que les sites ne soient pas en mesure de mettre à niveau à une nouvelle version de SQL Server tant qu’ils n’ont pas réécrit les applications de sélection dans les tables système. SQL Server considère les procédures stockées système, DDL et SQL-SMO comme des interfaces publiées, et veille à en maintenir la compatibilité descendante.

SQL Server ne prend pas en charge les déclencheurs définis sur les tables système, car ils peuvent perturber le bon fonctionnement du système.

Notes

Les bases de données système ne peuvent pas résider dans les répertoires partagés UNC.

Affichage des données d'une base de données système

Vous ne devez pas coder les instructions Transact-SQL qui interrogent directement les tables système, sauf s'il s'agit de la seule méthode d'obtention des informations requises par l'application. Au lieu de cela, les applications doivent obtenir les informations de catalogue et du système par l'un des moyens suivants :

  • Vues de catalogue système

  • SQL-SMO

  • Interface WMI (Windows Management Instrumentation)

  • Fonctions de catalogue, méthodes, attributs ou propriétés de l'API de données utilisée dans l'application, notamment ADO, OLE DB ou ODBC

  • Procédures stockées système et fonctions intégrées de Transact-SQL