楼主 其实这个问题很简单 数据库是从高向低兼容的 但低版本不能直接附加在高版本上
要在低版本备份出来 然后在高版本还原即可
有什么疑问可以随时找我 希望解决了楼主的问题
是否可以解决您的问题?
首先,要确保你的机子上安装了sql2008和sql2005,如果源数据库是放在服务器的话那么要确保能链接到服务器数据库。
1、用sql2008打开数据库,然后选择到导入到sql2005的目标数据库,鼠标右键---->数据导出,如图:
2、之后会d出对话框:
选择下一步,会d出如下对话框:
3、上图对话框d出来后选择sql2008的数据源跟目标数据库,然后点下一步,d出对话框:
这一步选择sql2005的导出到的数据库,如果没有数据库,需要先在sql2005新建一个数据库,继续点下一步,d出对话框:
选择复制一个表或者多个表和视图,然后继续下一步
4、d出选择要复制的表和视图的对话框,如图:
在这里选择要导出的表和视图,全选就是复制整个数据库了。然后继续下一步:
选择立即运行然后下一步:
如果没有报错,顺利运行,就完成了从sql2008到sql2005的数据库复制。
然后再从sql2005把数据库备份,就可以在在其他机子的sql2005还原了。
总结,将表的创建脚本提取出来执行,创建一个表,然后执行insert into table_A@服务器1 select from table_B@服务器2
是这样的,662是SQL Server 2008 SP2以后的数据库版本号,SP2之前的SQL Server 2008 \x0d\的数据库版本好是655,而661是SQL Server 2008 R2的数据库版本号,本身SQL Server 2008 R2的版本要比SQL Server 2008 要高,按常理661版的数据库文件是不能附加到支持655版本号的SQL Server 2008里的。至于出现这个蛋疼的提示是因为微软在SQL Server 2008 SP2里加入了15k分区数的功能,而发布SP2之前就已经发布了SQL Server 2008 R2了,由于SQL Server 2008 R2 RTM并不支持15k分区的功能,如果按常规SQL Server 2008还保持655的版本号的话就可能会出现附加15k分区的数据文件到SQL Server \x0d\2008 R2 RTM中,这肯定是不能附加的,所以微软为了解决这个难题,就打破常规,SQL Server 2008 SP2里将数据库的版本号改为662,这样,由SQL Server 2008 R2 RTM的数据库版本号比SQL Server 2008 SP2的低,所以自然就不能附加了,避免了麻烦,不过为了一15k分区的功能改变了版本号带来的副作用就像楼主这种情况了。\x0d\这时问题的根本缘由。\x0d\其实说白了,你是拿SQL Server 2008 R2的数据库附加到SQL Server 2008中,这肯定是不行的。要么将你现在的数据库实例升级到 SQL Server 2008 R2并安装最新的SP补丁之后再附加。要么将chat数据库附加到SQL Server 2008 R2版的数据库实例里,生成SQL Server 2008版的脚本文件,使用脚本文件部署到SQL Server 2008 SP2里。\x0d\\x0d\至于前边有朋友说用备份的方式,如果理解了我前边说的就知道肯定也是行不通的。
以 MDF结尾的是数据库文件,以 LDF结尾的是日志文件
在企业管理器中选择您的要导入数据的数据库,然后点击右键,选择所有任务->附加数据库->选择MDF文件,就可以了
对于数据库的还原,最好的备份数据库后,再还原数据库。可以使用定期备份
以上就是关于SQL Server 2005附加数据库出错全部的内容,包括:SQL Server 2005附加数据库出错、谁能帮我把MSSQL2008R2(661)版本数据库转为MSSQL2008(655)或者2005能附加上得、为什么sql server 高版本的数据库不能附加低版本 mdf文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)