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éfixées par " dbo.". Pourquoi est-ce?

240
demandé sur AakashM 2009-06-30 10:45:18

3 réponses

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 noms d'objet.

187
répondu Daniel 2009-06-30 06:47:27

Si vous utilisez Sql Server Management Studio, vous pouvez créer votre propre schéma en accédant à Databases-Your Database-Security-Schemas.

Pour en créer un en utilisant un script 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 schama pour les informations "financières" et un autre pour les données "personnelles". Vos tables s'afficheraient alors comme:

Financier.BankAccounts Financier.Transaction Personnelle.Adresse

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

71
répondu user75525 2009-06-30 06:56:42

C'est nouveau pour SQL 2005 et offre un moyen simplifié de regrouper des objets, en particulier dans le but de sécuriser les objets de ce "groupe".

Le lien suivant offre une explication plus approfondie de ce que c'est, pourquoi nous l'utiliserions:

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

17
répondu Jaans 2014-01-05 09:23:34