文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SQL Server附加数据库时出现错误的处理方法

2022-12-15 12:01

关注

前言

SQL Server 是数据库软件中比较常见且实用的软件,它的集成度很高,且功能非常强大。很多类型的网站系统后台数据库都依赖于SQL Server。但是,对于初学者而言,在操作过程中总是会出现各种各样的错误。现在,我对“无法升级数据库”这种报错信息,做详细处理流程的讲解。

一、如何附加数据库?

1.选择要添加的数据库文件,也就是.MDF和.LDF文件,将他们复制到SQL Server的工作目录下的存放数据脚本的位置。

选择复制数据库文件:

将复制好的数据库文件粘贴到SQL Server的工作目录下,我这里以路径“C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA”为例。

2.打开SSMS(数据库客户端管理工具),右键数据库,选择附加:

3.点击添加,选择刚才粘贴进数据库工作目录中的数据库文件(这里以TourDB.MDF为例),点击确定。

展开数据库,出现了我们刚才添加选择的数据库,说明附加成功。如果失败,附加时,就会报错。

二、无法升级数据库,出现(539类似版本号不匹配)错误解决办法

1.常见的无法附加数据库时,出现的错误

(1)数据类型不匹配,也就是说添加的数据脚本不符合SQL Server的规范,通常是SQL语句出现了出错误。

(2)无法解析数据库,即服务器无法访问数据库文件,就是数据库损坏了。

(3)无法升级数据库文件,就是服务器执行相关SQL操作时失败,大多数情况下都是数据库版本不兼容的问题。

2.无法升级数据库的解决办法

(1)首先,先看一看,出错的信息内容

很明显,版本不兼容,但是,我们还是要查看一下对应的版本,这一点很重要,会在后面的解决办法中起大作用。

(2)查看版本号,及兼容信息。右键任意一个创建好的数据库,选择属性,在选择页中,点击选项,就可以看到右边列表页中的兼容级别下拉列表。

因为我使用的是Sql Server2019,所以它兼容的最低版本是2008的。下面,我们再查看一下Sql Server的兼容表单:

Target SQL Server VersionSource SQL Server VersionInternal Database Version
SQL Server 2008 R2665
SQL Server 2008661
SQL Server 2008 R2SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2000539
SQL Server 2008661
SQL Server 2008SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2000539
SQL Server 2005 SP2+SQL Server 2005 with vardecimal enabled612
SQL Server 2005611
SQL Server 2005SQL Server 2000539
SQL Server 7515
SQL Server 2000SQL Server 2000539
SQL Server 7515
SQL Server 7SQL Server 7515

(3)针对性解决办法:使用虚拟机,在windows虚拟机中安装与本机安装的Sql Server的兼容最低版本的Sql Server,此时,上述列举的Sql Server不同版本对应的兼容版本的叙述就起了作用。

(4)将在本机中无法附加的数据库文件在虚拟中安装的可以兼容的最低版本中附加,然后分离,复制分离后的数据库文件,再重新附加到本机数据库中,即可解决无法升级数据库,完成附加的问题。

在虚拟机中的Sql Server中完成附加,我这里是Sql Server2019,所以在虚拟中安装的是Sql Server2008。

分离数据库,点击任务,选择分离

分离时,勾选“删除”,点击确定

在虚拟机中找到刚才的数据库文件,将它们粘贴到本机,在本机重新附加。

对比前后的操作时间,可以发现很明显发生了变化:

重新附加数据库:

左下角显示正在执行,说明数据库版本不兼容的问题已经解决。

总结

本篇文章主要针对附加数据库时,出现“无法升级数据库”,版本不兼容的错误给出了详细的解决过程。为什么要在虚拟机中使用另一个低版本的Sql Server对数据库文件进行升级,再进行分离转换呢?这是因为有时候我们用的数据库可能是拷贝别人的,当我们无法使用自己本地的Sql Server打开它们时,是很难知道它们的库表结构的,所以重新创建一个和它们一摸一样的库表,可以说几乎不可能,而且费时费力。因此采用这种办法,只需要安装虚拟机,安装兼容的低版本的Sql Server就能快速解决这种问题。这只是我在学习实践过程的一点操作经验,希望对遇到类似问题的朋友有所帮助。

到此这篇关于SQL Server附加数据库时出现错误的处理方法的文章就介绍到这了,更多相关SQL Server附加数据库错误内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯