I used to learn about SQL, especially MySQL. Then now my job requires me to understand Microsoft SQL Server (mssql). So I make these notes to guide me and others who want to transition to mssql. I usually summarized what I found and understood so far from browsing the internet.
My takeaways:
dbo stands for DataBase Owner.
We can't remove privileges from an object owner and we can't drop users from a database if they own objects in it.
schema is a
named container for
database objects, which allows us to group objects into separate namespaces. The
schema is the
database object that owns the table. For example, the AdventureWorks sample database contains schemas for Production, Sales, and HumanResources.

The four-part naming syntax for referring to objects specifies the schema name.
Server.Database.DatabaseSchema.DatabaseObject
Schemas can be owned by any database principal and a single principal can own multiple schemas. Principals are entities that can request SQL Server resources.
Schemas that contain objects cannot be dropped. The following schemas cannot be dropped:
dbo,
guest,
sys,
INFORMATION_SCHEMA.
The
sys and
INFORMATION_SCHEMA schemas are reserved for system objects. We
cannot create objects in these schemas and we
cannot drop them.
The
dbo schema is the
default schema of every database for all users. By default, users created with the
CREATE USER Transact-SQL command have
dbo as their default schema. The
dbo
schema is
owned by the
dbo
user account.

For example, the name of a table called orders owned by
dbo is
dbo.orders. If the table’s ownership is transferred to user
abc, the table will now be named
abc.orders.
Users who are assigned the
dbo as default schema
don't inherit the permissions of the
dbo
user account.
No permissions are inherited from a schema by users;
schema permissions are
inherited by the database objects contained in the schema.
the
dbo
user account is
not the same as the
db_owner
fixed database role and the
db_owner
fixed database role is
not the same as the
user account that is recorded as the owner of the database.
The
default schema for a user is
solely used for
object-reference in case the user omits the schema when querying objects. Users in the database will be able to access any object owned by
dbo without specifying the owner as long as the user has appropriate permission.
原文:https://dev.to/ranggakd/what-is-dbo-in-sql-server-396k
编辑推荐:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
