前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL Server数据库架构与对象相关知识笔记

SQL Server数据库架构与对象相关知识笔记

原创
作者头像
IT技术分享社区
修改2021-03-14 17:03:29
6090
修改2021-03-14 17:03:29
举报
文章被收录于专栏:IT技术分享社区

SQL Server数据库架构与对象相关知识笔记

1、数据库架构简介

数据库架构是从SQL Server2005版本之后引入的概念。数据库架构独立于创建它的数据厍用户而存在,每个对象都属于一个数据库架构(对象包括表、视图、存储过程、函数、触发器等)

2、 数据库、架构和数据库对象

数据库架构是一个独立于数据库用户的非重复命名空间,用户与架构相互独立,删除用户不会删除架构中的对象。将数据库架构与数据库用户分离有以下几个优点:

1、大大简化了删除数据库用户的操作。删除数据库用户不需要重命名该用户架构所包含的对象。所以在删除创建架构所含对象的用户后,不需要修改和测试显式引用这些对象的应用程序。

2、多个用户可以共享一个默认架构然后进行统一名称解析。

3、可以通过共享默认架构将共享对象存储在为特定应用程序专门创建的架构中,而不一定是dbo架构中。

4、可以用更大的粒度管理对象的权限。

如果数据库用户具有创建架构的权限,就可以在数据库中创建、更改数据库架构,该用户就是架构的所有者,并且可以将架构的所有权转让给其他用户,或者授予其他用户访问该数据库架构的权限,只有架构的所有者才能在架构中创建对象。

确定如何安排架构中的对象,安全是一个很重要的考虑因素。

架构作为一个命名空间——它被用作对象名称的前缀。例如,假设在一个名为System的数据库架构中有一个名为UserInfo的表。架构限定式对象名称(也称为“两部分式对象名称”)是System.UserInfo。

说明:数据库默认的架构为dbo,如果不写架构名称的话默认为dbo。当然如果一个数据库存在多个数据库架构,建议都采用两部分式对象名称的方式。这样可以便于后续的运维和代码的可读性。

IT技术分享社区

个人博客网站:https://programmerblog.xyz

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SQL Server数据库架构与对象相关知识笔记
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档