数据库还原后的登录名问题确实挺烦人的,尤其是你用SQL2000备份还原到SQL2005的时候。出现“无法安装数据库关系图支持对象”的提示,一般都是数据库所有者信息丢了,SQL Server不知道这数据库归谁管,不给你建图了。
先别急着重建数据库,实际上只要你把数据库的所有者换成一个有效登录名,问题就能。简单说,打开数据库属性→文件页,点一下所有者旁的省略号,选个有效账户就行。如果你喜欢写点命令行的活儿,直接用:
ALTER AUTHORIZATION ON DATABASE::你的数据库名 TO sa
我一般用sa,干净利落。你也可以用别的有效登录名,只要这个账号能正常登录就行。
哦对了,如果你是从SQL2000一路升上来的,还遇到备份还原、驱动兼容、连接方式这些问题,我下面也挑了些文章,方便你对症下药:
- SQL Server 2008 架构所有者设置教程,登录名设置方法讲得挺细
- SQL2005 备份还原,还原注意事项都在这
- SQL2000 和 SQL2005 同时安装的方案,装机环境复杂的可以看看
- asp 连接 sql2005 数据库,老项目的朋友用得上
提醒一句:如果你换了数据库名或者用了精简版SQL,有数据库关系图本身就不支持,别折腾太久。
如果你还遇到VB.Net连接数据库或是驱动问题,也可以参考下面这些:
数据库这块,早期版本坑确实多,懂点底层思路,会让你省不少时间。