Answers:
苹果和橘子。角色是角色,架构是架构。存在一个称为角色db_accessadmin
以及一个称为架构的事实,db_accessadmin
并不意味着角色是架构,也不意味着架构是角色。角色是安全性成员资格容器,主体是角色的成员。架构包含数据库架构绑定的对象,并由主体拥有。创建新用户时,您可以选择其默认架构,将其添加到某些角色,并授予其架构所有权。尽管这些动作是分开的,但是此对话框的设计者认为它们在某种程度上是相关的,值得所有UX领域使用(这是有问题的,但主题完全不同)。
嗯..这是一个非常古老的话题,但是对于那些仍然会来这里的人来说,我仍然要花2美分。此链接是上述查询的最佳答案。
摘录自同一:
SQL Server附带十个预定义的架构,它们与内置数据库用户和角色的名称相同。这些主要是为了向后兼容而存在。如果不需要,可以删除具有与固定数据库角色相同名称的架构。
db_datareader
角色和模式的用户可以写入某些对象,而其他人不一定可以读取这些对象。对于只需要读取访问权限dbo
但需要安装一些存储的proc或触发器的应用程序来说,它会很好地工作。当然,这仍然需要您手动将每个用户添加到角色和架构中。