当前位置: 首页 > 科技观察

SQLServer数据库架构及对象相关知识笔记

时间:2023-03-15 16:48:57 科技观察

1。数据库体系结构简介数据库体系结构是SQLServer2005之后引入的一个概念。数据库模式独立于创建它的数据用户而存在,每个对象都属于一个数据库模式(对象包括表、视图、存储过程、函数、触发器等)2.数据库、模式和数据库对象数据库模式是独立的由于数据库用户的命名空间不重复,用户和模式是相互独立的,删除用户不会删除模式中的对象。将数据库schema与数据库用户分离有以下优点:1、大大简化了删除数据库用户的操作。删除数据库用户不需要重命名该用户模式中包含的对象。因此,在删除模式中包含的创建对象的用户后,不需要修改和测试显式引用这些对象的应用程序。2.多个用户可以共享一个默认模式,进行统一的名称解析。3.共享对象可以通过共享默认模式存储在专门为特定应用程序创建的模式中,不一定在dbo模式中。4.对象权限可以进行更细粒度的管理。如果数据库用户有创建模式的权限,他可以在数据库中创建和更改数据库模式。用户是架构的所有者,可以将架构的所有权转让给其他用户,或授予其他用户访问数据库架构的权限。只有架构的所有者才能在架构中创建对象。在确定如何在架构中安排对象时,安全性是一个重要的考虑因素。作为命名空间的架构-它用作对象名称的前缀。例如,假设在名为System的数据库模式中有一个名为UserInfo的表。架构限定的对象名称(也称为“两部分对象名称”)是System.UserInfo。注意:数据库默认schema是dbo,如果不写schema名,默认是dbo。当然,如果一个数据库中有多个数据库模式,建议使用两部分对象名的方式。这样可以方便后续的运维和代码的可读性。