为什么sql server 高版本的数据库不能附加低版本 mdf文件?

我用sqlserver2008sp2附加数据库出现这么个蛋疼的提示:这不科学啊。。。什么情况?... 我用sql server 2008 sp2附加数据库出现这么个蛋疼的提示:

这不科学啊。。。什么情况?
展开
 我来答
百度网友5c91d28
推荐于2018-11-01 · TA获得超过5084个赞
知道大有可为答主
回答量:1916
采纳率:50%
帮助的人:1716万
展开全部
是这样的,662是SQL Server 2008 SP2以后的数据库版本号,SP2之前的SQL Server 2008
的数据库版本好是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
2008 R2 RTM中,这肯定是不能附加的,所以微软为了解决这个难题,就打破常规,SQL Server 2008 SP2里将数据库的版本号改为662,这样,由SQL Server 2008 R2 RTM的数据库版本号比SQL Server 2008 SP2的低,所以自然就不能附加了,避免了麻烦,不过为了一15k分区的功能改变了版本号带来的副作用就像楼主这种情况了。
这时问题的根本缘由。
其实说白了,你是拿SQL Server 2008 R2的数据库附加到SQL Server 2008中,这肯定是不行的。要么将你现在的数据库实例升级到 SQL Server 2008 R2并安装最新的SP补丁之后再附加。要么将chat数据库附加到SQL Server 2008 R2版的数据库实例里,生成SQL Server 2008版的脚本文件,使用脚本文件部署到SQL Server 2008 SP2里。

至于前边有朋友说用备份的方式,如果理解了我前边说的就知道肯定也是行不通的。
wasdwasd0302
2013-05-29 · 超过25用户采纳过TA的回答
知道答主
回答量:96
采纳率:100%
帮助的人:65.3万
展开全部
no no no 。。。。。。是低版本的数据库不能附加高版本的mdf文件,高版本的能附加低版本的!

建议你在原来的服务器上做一个全备份,.bak文件, 然后再 restore 到现在用到的服务器数据库上。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云裳广场舞
2013-05-29 · 我爱广场舞,我运动、我快乐、我健康!
云裳广场舞
采纳数:834 获赞数:1065

向TA提问 私信TA
展开全部
661是sql2008 R2的版本号,把您的sql2008 sp1 express升级到sql2008 r2 express试试。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云天英雄
2013-05-29 · TA获得超过3744个赞
知道大有可为答主
回答量:5976
采纳率:40%
帮助的人:2771万
展开全部
高版本附加低版本的都是需要转换的
追问
请问要怎么转换呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ruhong1
2013-05-29 · TA获得超过159个赞
知道小有建树答主
回答量:288
采纳率:0%
帮助的人:177万
展开全部
转换一下?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式