在导入数据库时我们有时会遇到错误,常见的两种错误的解决办法在这里作一作总结:

一、升级问题

在SQLServer2014中附加数据库时失败,在附加数据库的时候却提示无法升级数据库,错误539。点击消息详情之后能够看到如下错误:

附加数据库 对于 服务器“PC-20160315”失败。  (Microsoft.SqlServer.Smo)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=12.0.2000.8+((SQL14_RTM).140220-1752)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=附加数据库+Server&LinkId=20476
------------------------------
其他信息
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
无法升级数据库 'jspjiaoshidanganxns',因为此版本的 SQL Server 不支持该数据库的非发布版本(539)。不能打开与此版本的 sqlservr.exe 不兼容的数据库。必须重新创建该数据库。
无法打开新数据库 'jspjiaoshidanganxns'。CREATE DATABASE 中止。 (Microsoft SQL Server,错误: 950)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=950&LinkId=20476

出现这种问题主要是由于数据库版本不一致,具体来说是由于要导入的数据库文件版本太低,不能适应新版本软件,对于这种问题,我们只需将需要导入的数据库文件先导入较低版本比如2005或者2008版本的数据库,使用分离技术后然后再到回到SQLServer2014版本,注意在导入时计算机的位数要一致,然后再导入到2014版本中即可。

下面就让我们来看看具体的做法:

1、先将要安装的数据库文件复制到装有SQLServer2005或者SQLServer2008的操作系统中,然后进行导入,其具体过程如下图所示现将如下文件拷贝至拥有SQLServer2005/2008的操作系统:                    

sql server 53 sql server 539_sql server

 

图1

2、导入数据库:打开SQLServer2005后右键选中“数据库,会出现下拉列表,然后选中“附加”

            

sql server 53 sql server 539_sql server 53_02


 


 图2


3、点击“附加”按钮之后,我们能够看到出现如下界面

sql server 53 sql server 539_sql server 53_03

                                                                                          图3

4、点击“添加”按钮,打开要导入的数据库,然后点击确定按钮,出现如下图所示结果,我们能够清楚地看到数据库已经导入到SQLServer2005中

                                                              

sql server 53 sql server 539_sql server_04

                                                                                                           图4

5、选中已经导入的数据库,如下所选中的文件,右键点击,出现下拉列表,选中“任务->分离”,之后出现如下界面,点击确定:

sql server 53 sql server 539_无法升级_05

                                                                                                                                       图5

6、点击确定之后出现如下图所示界面,之前导入的文件已经不见,此时已经完成了转化的工作:

 

                                                                                       

sql server 53 sql server 539_无法升级_06

                                                                                                                  图6

7、接下来我们只需将分理处的文件拷贝到自己所使用的环境,也就是装有SQLServer2014版本的操作系统,继续进行导入工作,如下图所示:

                                                                     

sql server 53 sql server 539_数据库_07

                                                                                                       图7

8、点击“附加”之后,我们能够看到和SQLServer2005一样的导入界面,如下图所示

sql server 53 sql server 539_sql server 53_08

                                                                                                                        图8

9、按照SQLServer2005导入的方法导入即可,这样我们就完成了附加数据库时由于版本不一致导致的出错问题,即数据库的升级问题。

注:

以下是查询到的Sql Server2012以前的微软所有 Sql Server数据库的内部版本号列表: (Sql Server2012数据库的内部版本号为 706)


Target SQL Server Version


Source SQL Server Version


Internal Database Version


SQL Server 2008 R2


SQL Server 2008 R2


665


SQL Server 2008


661


SQL Server 2005 with vardecimal enabled


612


SQL Server 2005


611


SQL Server 2000


539


SQL Server 2008


SQL Server 2008


661


SQL Server 2005 with vardecimal enabled


612


SQL Server 2005


611


SQL Server 2000


539


SQL Server 2005 SP2+


SQL Server 2005 with vardecimal enabled


612


SQL Server 2005


611


SQL Server 2000


539


SQL Server 7


515


SQL Server 2005


SQL Server 2005


611


SQL Server 2000


539


SQL Server 7


515


SQL Server 2000


SQL Server 2000


539


SQL Server 7


515


SQL Server 7


SQL Server 7


515


 

通过以上表,我们就可以很快理解这个错误提示了。如果要查看Sql Server的内部版本号,也可以通过下面的Sql句来查看: 

SELECT DATABASEPROPERTYEX('MASTER','VERSION')

二、权限问题

在导入数据库时,出现如下所示问题

                              

sql server 53 sql server 539_无法升级_09


                                                                                               图1


这是由于权限问题,即Windows系统权限与SQLServer数据库之间的权限,对于这种问题,我们有以下解决办法

(一):修改权限

1、对于jspjiaoshidanganxns_Data.MDF的数据库文件,右键选中点击属性,选择TAB标签“安全”,如下图所示,选中“Authentiated Users”点击编辑按钮:

                                       

sql server 53 sql server 539_数据库_10

                                                                                           图2

2、接着出现如下所示界面,赋予用户完全控制命令,点击“应用”,“确认”按钮

                                               

sql server 53 sql server 539_无法升级_11

                                                                                              图3

3、对于jspjiaoshidanganxns_Log.LDF文件同样使用上述方法进行操作,然后进行导入即可顺利完成

(二)复制到SQLServer数据文件夹

1、如下图所示将需要导入的数据库复制到DATA文件夹下,其路径为安装路径下的:G:\SQL Server2014\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA

 

sql server 53 sql server 539_数据库_12

2、接着进行导入即可顺利完成导入工作

 

以上就是SQLServer附加时常见的问题