首先我们从安全对象来了解架构:
如图1:
使用图形表示,这样我们更能方便的了解架构,和她在安全对象中所处的位置及与其他安全对象的关系。
找到一张,如图,数据库引擎权限层次结构之间的关系图:
这能帮助我们理解架构。
引用帮助文档对架构的定义:
从 SQL Server 2005 开始,每个对象都属于一个数据库架构。数据库架构是一个独立于数据库用户的非重复命名空间。您可以将架构视为对象的容器。可以在数据库中创建和更改架构,并且可以授予用户访问架构的权限。任何用户都可以拥有架构,并且架构所有权可以转移。
在SQL Server 2000中架构和用户是没有多大的区别,我们在2000中一般是指所有者。2005后,用户和架构开始明确的分开,架构可以理解为对象的容器或者命名空间。
对于架构特点的理解小节如下:
1.一个架构中不能包含相同名称的对象,相同名称的对象可以在不同的架构中存在。
2.一个架构只能有一个所有者,所有者可以是用户, 数据库角色, 应用程序角色。
3.一个用数据库角色可以可以拥有一个默认架构,和多个架构。
4.多个数据库用户可以共享单个默认架构。
5.由于架构与用户独立,删除用户不会删除架构中的对象。
6.SQL Server 2000 中对象引用是:
[DatabaseServer].[DatabaseName].[ObjectOwner].[DatabaseObject] SQL Server 2005 中对象引用是: [DatabaseServer].[DatabaseName].[DatabaseSchema].[DatabaseObject] |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
使用SQLServer2005链接服务器和Sybase(二)
Sybase数据库与SQLServer2005数据库的同步,准确的说是使用SQL Server 2005读取和写入Sybase数据库表。 在项目中有时需要做其他系统的数据接口,而接口中的数据……
-
使用SQLServer2005链接服务器和Sybase(一)
Sybase数据库与SQLServer2005数据库的同步,准确的说是使用SQL Server 2005读取和写入Sybase数据库表。 在项目中有时需要做其他系统的数据接口,而接口中的数据……
-
如何限制用户访问数据库
有没有一种办法能让Oracle8.0,8i以及9i阻止某些应用程序如Microsoft Access访问数据库?解决这一问题的方法之一就是使用安全应用程序的Role。创建Role的过程如下……
-
如何创建不能自行修改密码的用户
我想创建一个不能自行修改密码的用户,该怎么办呢?创建不能自行修改密码的用户的一种方法就是执行密码验证函数,然后将密码验证函数分配给用户……