高分求解:SQL2005中“DBO”到底是什么,请对SQL有多年了解的前辈看贴
在SQL2005中看见很多表名都有前缀dbo,但是不写也可以。比如pubs的数据库中的表dbo.title
请问:这里的DBO到底是什么?是什么概念?
我也上百度找了一下,有两个命案比较像。
1. dbo是一个构架(schema),在sql2005中,表的调用格式如下:"数据库名.构架名.表名",同一个用户可以被授权访问多个构架,也可以被禁止访问某个或多个构架,这就是2005中提倡的"用户与构架分离"的概念. 在2005中,如果在创建表时没有指定构架(schema),那么系统默认该表的构架是dbo,所以会出现很多表名前自动加上dbo.字符样式.
2.DBO是每个数据库的默认用户,具有所有者权限,即DbOwner
这两答案,看上去感觉是大致一样,却明显有差别,真是头痛,希望对SQL有多年了解的前辈们给解释或下一个定论,到底是“构架”还是“默认用户”。谢谢了