web-dev-qa-db-fra.com

Pourquoi les noms de table dans SQL Server commencent-ils par "dbo"?

Au moins sur mon instance locale, lorsque je crée des tables, elles sont toutes précédées du préfixe "dbo.". Pourquoi donc?

272
pupeno

dbo est le schéma par défaut dans SQL Server. Vous pouvez créer vos propres schémas pour vous permettre de mieux gérer votre espace de nom d'objet.

215
Daniel

Si vous utilisez Sql Server Management Studio, vous pouvez créer votre propre schéma en accédant à Bases de données - Votre base de données - Sécurité - Schémas.

Pour en créer un en utilisant un script, c'est aussi simple que (par exemple):

CREATE SCHEMA [EnterSchemaNameHere] AUTHORIZATION [dbo]

Vous pouvez les utiliser pour regrouper logiquement vos tables, par exemple en créant un schéma pour les informations "financières" et un autre pour les données "personnelles". Vos tables s’affichent alors comme suit:

Financial.BankAccounts Financial.Transactions Personal.Address

Plutôt que d'utiliser le schéma par défaut de dbo.

79
Fenton

C'est une nouveauté de SQL 2005 et offre un moyen simplifié de regrouper des objets, notamment dans le but de sécuriser les objets de ce "groupe".

Le lien suivant offre une explication plus détaillée de ce que c'est, pourquoi nous l'utilisons:

Comprendre la différence entre propriétaires et schémas dans SQL Server

20
Jaans