我不是使用 SQL 数据库的初学者,尤其是 SQL Server。但是,我主要是使用 SQL 2000 的人,并且一直对 2005 年及以后的模式感到困惑。是的,我知道架构的基本定义,但它们在典型的 SQL Server 部署中真正用于什么?
我一直只使用默认模式。为什么我要创建专门的模式?为什么我要分配任何内置模式?
编辑:澄清一下,我想我正在寻找模式的好处。如果您只打算将其用作安全方案,那么似乎数据库角色已经填补了那个.. er.. um.. 角色。并且使用它作为命名空间说明符似乎是您可以通过所有权完成的事情(dbo 与用户等)。
我想我的意思是,Schemas 做了哪些所有者和角色不能做的事情?它们的具体好处是什么?
模式在逻辑上将表、过程、视图组合在一起。架构中所有与员工相关的对象employee等。
employee
您还可以只授予一个模式的权限,以便用户只能看到他们有权访问的模式,而不能看到其他任何内容。