SQL Server – Schema

前言

久仰 dbo 大名, 但是一直没有认真去看它有啥作用. 今天翻看了一下 SQL Server sample database: AdventureWorks2019, 发现它用了许多 Schema

 

感觉像当 namespace 用, 于是好奇心下去查了一下 Schema.

 

 

主要参考

Sql Server 的Schema详解

sql server 中的模式/架构(schema)

Why Use Schemas?

Why Schema Is So Important When Securing SQL Servers

 

简单总结

Schema 中文翻译是模式.

它的作用是把 database 里的 object 做分组, Table, View, Triggers, Indexes 等等

默认的 Schema 叫 dbo, database owner 的缩写.

分组后除了整齐好看之外, 还可以做权限管理.

我个人觉得, 如果表很多的话, 确实搞个分组会比较整齐一些, 但如果你说非用不可, 那也说不上. 所以跟重要的应该是权限管理, 

想查看所有 Schema 的话

SELECT s.name AS schema_name, 
       s.schema_id, 
       u.name AS schema_owner
FROM sys.schemas s
     INNER JOIN sys.sysusers u ON u.uid = s.principal_id
ORDER BY s.name;

这个是 AdventureWorks2019 的 Schemas

看样子, 它也只是为了整齐而已.

外加一副 AdventureWorks2019 diagram 图

 

posted @   兴杰  阅读(661)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
点击右上角即可分享
微信分享提示