预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

sqlserver2005创建关系图遇到的错误的解决办法 sqlserver2005创建关系图遇到的错误的解决办法 错误提示: 此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTERAUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象。 sql2000备份的数据库还原到sql2005后,选择“数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTERAUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象。 解决方法如下: 方法1、设置兼容级别为90(2005为90)或是选责你还原的数据库,点右键,选属性->选项->兼容级别,选择sqlserver2005(90)然后确定,这时,你在该数据库下展开“数据库关系图”节点时会有个提示,"此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。 USE[master] GOEXECdbo.sp_dbcmptlevel@dbname='数据库名',@new_cmptlevel=90 GO 方法2、通过以上的方法操作,如果问题依然存在的话,按下列方法继续 选择你的数据库,然后选择"安全性"->"用户",选择dbo,打开属性页,如登录名为空的话,新建查询,然后 执行成功后,你再选择"数据库关系图"节点,时提示“此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。就可以看到原先建的关系图了。 use[你的数据库名]EXECsp_changedbowner'sa' ------------------------------------------- SQLServer2005联机丛书(2007年9月) 了解数据库关系图所有权(VisualDatabaseTools) 若要使用数据库关系图设计器,必须先由db_owner角色(MicrosoftSQLServer数据库的一个角色)的成员对其进行设置,以控制对关系图的访问权限。每个关系图都有一个而且只有一个所有者,即创建该关系图的用户。有关设置关系图的详细信息,请参阅如何设置数据库关系图设计器(VisualDatabaseTools)。 关于关系图所有权,需要记住以下几点: 尽管任何可以访问数据库的用户都能够创建关系图,但在创建关系图之后,只有关系图的创建者和db_owner角色的所有成员才能查看该关系图。 关系图的所有权只能转让给db_owner角色的成员。只有当关系图的前一任拥有者已从数据库中移除时,才需要转让所有权。 如果关系图的拥有者已从数据库中移除,该关系图将一直保留在数据库中,直到db_owner角色的成员试图打开该关系图。此时,db_owner成员可以选择接管关系图的所有权。 重要提示:若要在SQLServerManagementStudio中安装数据库关系图支持,数据库必须处于SQLServer2005数据库兼容级别。如果数据库未在90兼容级别,则在尝试安装关系图支持时出现以下错误:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTERAUTHORIZATION语句将数据库所有者设置为一个有效的登录名,然后添加数据库关系图支持对象。安装关系图支持后,可重置数据库兼容级别。使用以下Transact-SQL语句更改数据库的兼容级别,然后重试数据库关系图操作。EXECsp_dbcmptlevel'database_name','90';这些支持对象可能无法安装在已附加到其他SQLServer实例或通过其他实例还原的数据库中。如果数据库所有者名称(存储于数据库中)在数据库附加或还原到的SQLServer实例中不是有效的登录名,则可能会发生这种情况。使用以下Transact-SQL语句将SQLServer实例中的数据库所有者改为有效的登录名,然后重试数据库关系图操作。ALTERAUTHORIZATIONONDATABASE::database_nameTOvalid_login ------------------------ 使用sp_change_users_login排除孤立用户 所谓孤立帐户,就是某个数据库的帐户只有用户名而没有登录名,这样的用户在用户库的sysusers系统表中存在,而在master数据库的syslogins中却没有对应的记录 孤立帐户的产生一般是一下两种: 1.将备份的数据库在其它机器上还原; 2.重装系统或SQLSERVER之后只还原了用户库 解决方法是