schema

来源:互联网 发布:嵌入式音响 知乎 编辑:程序博客网 时间:2024/04/30 11:23

A schema is a collection of database objects. A schema is owned by a database user and has the same name as that user.

在 SQL Server 2000 和早期版本中,数据库可以包含一个名为“架构(schema)”的实体,但此实体实际上是数据库用户。在 SQL Server 2005 和 SQL Server 2008 中,架构是指包含表、视图、过程等的容器。它位于数据库内部,而数据库位于服务器内部。这些实体就像嵌套框放置在一起。服务器是最外面的框,而架构是最里面的框。在 SQL Server 2005 和 SQL Server 2008 中,提倡"用户和架构分离",即一个用户可以对应多个架构,一个架构也可以对应多个用户,所以架构和user就不再需要同名了.系统可以赋予某个user访问某个架构的权限,也可以取消该权限.
 
schema为数据库对象的集合,为了区分各个集合,我们需要给这个集合起个名字,这些名字就是我们在企业管理器的方案下看到的许多类似用户名的节点,这些类似用户名的节点其实就是一个schema,schema里面包含了各种对象如tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links。一个用户一般对应一个schema,该用户的schema名等于用户名,并作为该用户缺省schema。这也就是我们在企业管理器的方案下看到schema名都为数据库用户名的原因。最简单的理解:以你计算机的用户为例,如果你的计算机有3个用户,那么每个用户登录系统看到的(使用的)功能是可以不相同的