时间:2021-07-01 10:21:17 帮助过:6人阅读
无法删除 dbo 用户,且此用户始终出现在每个数据库中。
只有由 sysadmin 固定服务器角色成员(或 dbo 用户)创建的对象才属于 dbo。由任何其他也不是 syadmin 固定服务器角色成员的用户(包括 db_owner 固定数据库角色成员)创建的对象: 属于创建该对象的用户,而不是 dbo 用创建该对象的用户名限定
拥有数据库db_owner角色的用户将可以看到并操作该数据库下所有架构的对象
如果一个用户拥有数据库的db_owner权限,那么该用户将可以操作该数据库下所有架构的对象(也就是该数据库中所有的表、视图、存储过程等对象,拥有db_owner权限的用户都可以看到并进行操作),如果一个用户没有db_owner权限,那么该用户将只能看到该用户所拥有架构的数据库对象。
为了说明这一点我来举个例子,现在数据库里面有一个叫max的用户,他不拥有数据库DW_Demo的任何架构:
但是他拥有数据库的db_owner角色权限:
用max登陆数据库DW_Demo后,他可以看到并操作所有架构的表等对象(可以看到下图中max可以看到db_owner架构和dbo架构的所有表,但是他本身并不拥有这两个架构):
接下来我们用数据库管理员账户来取消用户max在数据库DW_Demo中db_owner的权限:
然后再用max登陆数据库DW_Demo,现在发现他什么都看不到了,原因就是现在他失去了数据库DW_Demo的db_owner权限:
dbo与db_owner区别
标签: