SQL Server 2005 出现“此数据库没有有效所有者”错误的解决方法

原因一:从SQL SERVER 2000中备份的数据库还原到SQL SERVER 2005
       从SQL SERVER 2000中备份的数据库还原到SQL SERVER 2005上,打算新建一个数据库关系图,可是在Microsoft SQL Server Management Studio中一点数据库关系图的文件夹,就出现一个“此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先试用”数据库属性”对话框的”文件”页或ALTER AUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象”的提示按照他说的指定所有者,可惜还是不对,查了一下,应该执行如下语句:
USE [master]
GO
EXEC dbo.sp_dbcmptlevel @dbname=N’数据库名’, @new_cmptlevel=90
GO

因为2000备份的数据库还原到2005以后,兼容级别是80,更新成90就OK了

原因二:
        当把从其它机器备份出来的数据库,还原到自己的机器上后,在SSMS中点击这个数据库的数据库关系图时,出现了以下提示:

此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或ALTER AUTHORIZATION语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象。

数据库中确定是有数据库关系图的。提示给出了两种方法,第一种试了几次都不好用,第二种方法倒是一次成功,具体在SSMS中运行以下命令:

ALTER AUTHORIZATION ON database::mydbname TO sa

把mydbname修改为实际的数据库名称,就可以把所有者设置为sa了。

posted @ 2009-05-08 17:07  过期的风子  阅读(3728)  评论(0编辑  收藏  举报