数据库 架构 对象(表 试图 存储过程)之间的关系

一个数据库包含多个架构,而每个架构则又包含多个对象。可以将架构看作是各种对象的容器,这些对象可以是表(table)、视图(view)、存储过程(stored procedure)等。

可以在架构级别上控制对象的访问权限。例如,可以为一个用户授予某个架构上的SELECT权限,让这个用户能够查询该架构中所有对象的数据。所以,对于决定在架构中如何组织对象,安全性是应该考虑的因素之一。

此外,架构也是一个命名空间,用作对象名称的前缀。例如,假设在架构Sales中有一个Order表,架构限定(schema-qualified)的对象名称是Sales.Orders,也称为两部分对象名称(two-part name)。如果在引用对象时省略架构名称,SQL Server将采用一定的办法来分析出架构名称是什么,例如,检查对象是否在用户的默认架构中,如果不在,再继续检查对象是否在dbo架构中。当在代码中引用对象时,推荐总是使用这种由两部分构成的对象的名称。有时,如果不显示指定架构,那么在解析对象名称时,就会要付出一些没有意义的额外代价。而且,在不同的架构中可能存在名称相同的多个对象,如果这时不显示指定架构,那么最终得到的对象可能并不是你原本想要的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值