SQL Server数据库架构与对象相关知识笔记
1、数据库架构简介
数据库架构是从SQL Server2005版本之后引入的概念。数据库架构独立于创建它的数据厍用户而存在,每个对象都属于一个数据库架构(对象包括表、视图、存储过程、函数、触发器等)
2、 数据库、架构和数据库对象
数据库架构是一个独立于数据库用户的非重复命名空间,用户与架构相互独立,删除用户不会删除架构中的对象。将数据库架构与数据库用户分离有以下几个优点:
1、大大简化了删除数据库用户的操作。删除数据库用户不需要重命名该用户架构所包含的对象。所以在删除创建架构所含对象的用户后,不需要修改和测试显式引用这些对象的应用程序。
2、多个用户可以共享一个默认架构然后进行统一名称解析。
3、可以通过共享默认架构将共享对象存储在为特定应用程序专门创建的架构中,而不一定是dbo架构中。
4、可以用更大的粒度管理对象的权限。
如果数据库用户具有创建架构的权限,就可以在数据库中创建、更改数据库架构,该用户就是架构的所有者,并且可以将架构的所有权转让给其他用户,或者授予其他用户访问该数据库架构的权限,只有架构的所有者才能在架构中创建对象。
确定如何安排架构中的对象,安全是一个很重要的考虑因素。
架构作为一个命名空间——它被用作对象名称的前缀。例如,假设在一个名为System的数据库架构中有一个名为UserInfo的表。架构限定式对象名称(也称为“两部分式对象名称”)是System.UserInfo。
说明:数据库默认的架构为dbo,如果不写架构名称的话默认为dbo。当然如果一个数据库存在多个数据库架构,建议都采用两部分式对象名称的方式。这样可以便于后续的运维和代码的可读性。
IT技术分享社区
个人博客网站:https://programmerblog.xyz
文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2019-03-11 这几款前端必备构建工具合辑,我们帮你整理好了!
2018-03-11 math.js:灵活强大的JavaScript数学库
2018-03-11 math.js:灵活强大的JavaScript数学库
2018-03-11 math.js:灵活强大的JavaScript数学库
2017-03-11 使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件(转)
2017-03-11 .NET世界的包管理器——Nuget