« 上一篇下一篇 »

SQL Server 2005/2008 附加SQL Server 2000数据库的方法

由于早早用上了SQL Server 2008,SQL Server 2000完全不会用了。

今天帮一个朋友把SQL Server 2000数据库附加在SQL Server 2005上,折腾半天没个头绪。最终,终于让我消灭了这个问题。记录下方法。

安装了sql server 2005以后,不管是32位还是64位,都可以直接附加sql server 2000下创建的数据库文件。数据库升级到2005的最快速的方法是:在SQL Server 2000中分离数据库,将数据库文件拷到装有SQL Server 2005的机器上,然后在Management Studio中附加数据库。附加数据库后删除数据库中的原来用户,重新增加管理用户。

而删除原来的用户会产生“数据库主体在该数据库中拥有架构,无法删除”错误,解决办法是:

在2005上附加了一个2000下的MDF数据库,提示附加成功后,里面有一个原来数据库的用户,想无法删除这个用户,却遭到系统的拒绝,提示如下:数据库主体在该数据库中拥有 架构,无法删除。 (Microsoft SQL Server,错误: 15138)   仔细研究了一下,发现很简单,只要在数据库的安全性-构架中先删除对应的构架(用户名字相同),然后就可以删除用户了。

删除该用户后,添加自己的用户权限即可。

问题解决方案

1.升级到2005后,原来的sql语句执行出错的解决办法。比如: Microsoft OLE DB Provider For ODBC Drivers错误 '80040e21'
ODBC 驱动程序不支持所需的属性。

只要将sql的连接语句改为“provider=sqloledb.1”,即OLE/DB方式就可以了。

2.SQLSERVER2005的配置管理器打不开,显示“无法连接到WMI提供程序。您没有权限或者该服务器无法访问"

只要给C:\Program Files\Microsoft SQL Server\90\Shared这个目录增加network service权限或者user权限就可以了,加Everyone也行。

也有可能是sqlmgmproviderxpsp2up.mof错误

CMD下输入mofcomp.exe "C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlmgmproviderxpsp2up.mof"  搞定!