博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库关系图”提示:此数据库没有有效所有者
阅读量:6709 次
发布时间:2019-06-25

本文共 1139 字,大约阅读时间需要 3 分钟。

今天用sql2005时,无意间发现自己的关系视图竟然无法使用,查了些资料后,发现可以如下设置(转载):原文地址

sql2000备份的数据库还原到sql2005后,选择“数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法

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

     

解决方法如下:

1、设置兼容级别为90(2005为90)  

USE   [master]  

GO  

EXEC   dbo.sp_dbcmptlevel   @dbname='数据库名',   @new_cmptlevel=90  

GO   

或是选责你还原的数据库,点右键,选属性->选项->兼容级别,选择sqlserver2005(90) 然后确定,

       这时,你在该数据库下展开“数据库关系图”节点时会有个提示,"此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。

2、通过以上的方法操作,如果问题依然存在的话,按下列方法继续

选择你的数据库,然后选择"安全性"->"用户",选择dbo,打开属性页,如登录名为空的话,新建查询,然后

use [你的数据库名]

EXEC    sp_changedbowner    'sa'  

执行成功后,你再选择"数据库关系图"节点,时提示 “此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。 就可以看到原先建的关系图了。

3.通常前两步就可解决问题了,第三种方法使用ALTER命令来做。

异常:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。当把从其它机器备份出来的数据库,还原到自己的机器上后,在SSMS中点击这个数据库的数据库关系图时,出现了以下提示:

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

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

ALTER AUTHORIZATION ON database::mydbname TO sa

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

关于ALTER AUTHORIZATION的详细参数,可以参考以下地址:

你可能感兴趣的文章
微信公共服务平台开发(.Net 的实现)2-------获得ACCESSTOKEN
查看>>
Nginx + php-fpm 执行 PHP 脚本超时 报错 502 Bad Gateway + 504 Gateway Time-out 的解决办法...
查看>>
Scala第三章学习笔记
查看>>
Elven Postman(二叉树)
查看>>
【十大经典数据挖掘算法】Naïve Bayes
查看>>
HDU 1429 胜利大逃亡(续)(bfs)
查看>>
saltstack远程操作WINDOWS的POWERSHELL脚本
查看>>
Zookeeper客户端使用
查看>>
kindeditor粘贴word文档内容时去除格式的方法?如何设置为默认无文本格式呢?
查看>>
IT 名企招聘信息
查看>>
this web application instance has been stopped already解决办法
查看>>
【计导作业】链表——成绩统计2
查看>>
Xen安全架构sHype/ACM策略配置图文教程
查看>>
汇编语言--百度百科
查看>>
OpenGL学习之路(三)
查看>>
sql ltrim rtrim
查看>>
几点基于Web日志的Webshell检测思路
查看>>
mysql sql_mode 之 NO_ENGINE_SUBSTITUTION
查看>>
嵌入式系统 Boot Loader 技术内幕【转】
查看>>
(windows)一台电脑上安装两个Mysql服务
查看>>