易截截图软件、单文件、免安装、纯绿色、仅160KB

理解SQL SERVER中所有者和架构的区别

理解SQL SERVER中所有者和架构的区别
SQL SERVER2005介绍了架构,架构相对于以前版本中的对象所有者。本文将解释这两者的区别,并希望能解开你至今仍对架构一点困惑。
对象所有者
要理解所有者和架构之间的区别,让我们先花点时间来复习一下对象的所有权。在SQL SERVER2000或以前版本中创建一个对象,对象必须要有一个所有者(owner)。大部分情况,所有者为“dbo(数据库所有者)”。一个对象可以被数据库中任何一个用户所拥有。判断一个对象的所有者的方法是在企业管理器或Manager Stdio中浏览表的列表时查看对象的全限定名称(full qualified)。比如,一个由dbo所拥有的表orders其全限定名为dbo.orders。如果该表的所有权转移至用户abc,那么该表现在的全限定名为abc.orders。
对象是如何属于某个所有者的呢?这依赖于创建对象时的用户。
也有可能是db_owner角色成员创建了一个由数据库中任何对象所拥有的对象。缺省情况下,创建对象的用户账号(该账户必须拥有CREATE TABLE的权限)也是对对象的所有者。只有db_owner角色成员可以创建由dbo所拥有的对象。即使那样,在某些情况下,对象的所有者还可能是实际的用户而不是dbo。
使用dbo作为数据库中所有对象的所有者可以简化对象的管理。因为数据库中永远都会有dbo用户的。数据库中的用户只要有权限可以不用指定所有者名称就可以存取由dbo拥有的对象了。如果一个对象不是被dbo所有用,那么该所有者将要被删除时,必须将对象的所有权转移给其他用户。比如有一个非dbo用户ted创建了sales表,该表名称为ted.sales。如果ted以外的用户想使用此表,那么必须使用表的全限定名来指定。如果ted离开了公司或部门,那么他的数据库用户账号必须得删除。在删除前,ted所拥有的对象必须使用存储过程sp_changeobjectowner将所有权转移至其他用户账号。
如果这个表在应用程序或者其他存储过程中使用过,改变表的所有者可能导致所有的代码出错。如果一开始该表就被dbo所拥有,那么即使删除了ted账号也没有关系。代码也不需要使用全限定名——这样可能损失点性能——来指定对象,这被认为是最实用的方法。
架构
我喜欢将架构想象成一个组织对象的容器。如果你看一下adventureworks样例数据库,你会发现表是按照部门或者功能组织起来的,比如“HumanResources”或者“Production”(图一)。这看起来有点像老的拥有者概念,但却拥有许多益处。首先,因为对象


相关文档:

SQL字符串处理函数汇总

一、字符转换函数
1、ASCII()
返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。
2、CHAR()
将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。
3、LOWE ......

通过分析SQL语句的执行计划优化SQL

通过分析SQL语句的执行计划优化SQL(总结)
做 DBA快7年了,中间感悟很多。在DBA的日常工作中,调整个别性能较差的SQL语句时一项富有挑战性的工作。其中的关键在于如何得到SQL语句的执行计划和如何从SQL语句的执行计划中发现问题。总是想将日常经验的点点滴滴总结一下,但是直到最近才下定决心,总共花了3个周末时间,才将其 ......

SqlHelper.cs源代码 petshop4.0 sql server helper类

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Collections;
using System.Data.SqlClient;
/// <summary>
/// 数据库的通用访问代码
/// 此类为抽象类,不允许实例化,在应用时直接调用即可
/// </summary>
public ab ......

获取SQL Server元数据方法

元数据简介
  元数据 (metadata) 最常见的定义为"有关数据的结构数据",或者再简单一点就是"关于数据的信息",日常生活中的图例、图书馆目录卡和名片等都可以看作是元数据。在关系型数据库管理系统 (DBMS) 中,元数据描述了数据的结构和意义。比如在管理、维护 SQL Server 或者是开发数据库应用程序的时候,我们经常要获 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号