2011-03-04 73 views
18

我试图从考试70-515做一些练习。不幸的是,我试图将Northwind连接到一个电网控制系统时失败了。它会导致: NORTHWND.MDF' cannot be opened because it is version 655. This server supports version 612 and earlier. A downgrade path is not supported.数据库无法打开,因为它是版本655.此服务器支持版本612

我使用Windows 7 Home和MS Visual Web Developer 2010 Express。就像我理解这个错误一样,SQL Express必须是我系统上的旧版本。我从here下载并安装了SQL Express 2008r2。没有效果。从其他来源,我发现我可能需要更改实例名称:Tools - > Options - > Database Tools - > Data Connections - > SQL Server Instance Name。它写有SQLEXPRESS。我不知道我还应该在那里插入什么?

+0

从一个快速谷歌它似乎是连接到2005年的实例,而不是2008年的实例,我认为? –

+0

是的 - 但我如何告诉Visual Studio与我安装的2008实例连接? – sl3dg3

+0

我试试这个。仍然有相同的错误 –

回答

7

原来,卸载SQL Express并重新安装最新版本修复了这个问题。如上所述,我在安装时将SQLSERVER2008选为Instance-Name,并将其设置在Visual Studio中。

+0

我试试这个。仍然有同样的错误。请帮忙解决 –

3

转到服务控制面板并查找名为SQL Server (XXX)的服务 - XXX是服务正在运行的实例的名称。您只需找到您安装的2008R2实例,并将其输入到“SQL Server实例名称”框中即可。

+0

嗯,我已经做到了。我只能找到'SQL Server(SQLEXPRESS)'。也许我应该卸载Sql-Express并完全重新安装它?我会试试看... – sl3dg3

-1

当您尝试使用SQLServer Express连接到MDF文件时,会发生这种情况。要解决此问题,您需要转到并打开SQL Server服务。您需要设置日志属性以及服务启动时,您将能够无任何问题地连接到MDF文件。

-1

前提条件Tools>Options>Data Connections,前提是您已安装SQL Server Express 2008r2,将SQL Server实例名称保留为空。

+0

本身没有'实例名字段',所以“留空”对新手来说听起来很陌生。 – RichardTheKiwi

0

我看过这篇文章,但没有任何帮助。然后我尝试了其他一些选择。

我发现工作的方式是从原始数据库导出数据库和存储过程。然后将它们上传到第二个数据库(第二台计算机)。

首先导出数据库内容(数据) - 我用SQL server导出数据向导。在你希望从右键点击的数据库上选择任务,然后导出数据。按照说明进行保存,并保存为最适合您的格式 - 我使用excel作为数据。

然后再次导出存储过程,然后右键单击数据库名称。选择任务,这次选择生成脚本。再次按照向导的说明进行操作。

要导入数据,只需转到第二台计算机,然后右键单击要导入数据的数据库。再次任务>导入数据。按照说明从数据库中导入所有数据。

最后,要导入存储过程,我打开了一个新的存储过程命令,并拖放了以前保存在其中的脚本文件并将其放入此窗口。新的存储过程窗口充满了我的存储过程的整个列表。最后,更改SP将使用的数据库名称(如果这与原始数据库名称不同)。 (这是第一行USE [DBName],然后执行并且SP将完全恢复。

这帮助我完成了整个数据库并且很快重新运行。

1

可能会帮助您尝试更改兼容性级别,以确保向后兼容。

验证它是什么级别

USE VJ_DATABASE; 
GO 
SELECT compatibility_level 
FROM sys.databases WHERE name = 'VJ_DATABASE'; 
GO 

然后使之与旧版本

ALTER DATABASE VJ_DATABASE 
SET COMPATIBILITY_LEVEL = 110; 
GO 
  • 100 = SQL Server 2008中
  • 110 = SQL Server 2012中
  • 120兼容= Sql Server 2014

默认情况下,Sql Server 2014会将数据库版本兼容性更改为2014,使用@@ version您应该能够知道Sql Server是哪个版本。

然后运行上面的命令来更改它的版本。

附加步骤:确保您查看数据库的可访问性未重置,请通过右键单击文件夹和数据库的属性来执行此操作。 (请确保您有权利这样你就不会得到一个拒绝访问)

0

SQL Management Studio中不同SQL Server版本(或数据库版本)。例如:在当前的时间,我的工作电脑有的SQL Server 2012 Management Studio中SQL版本是9.0 - 这是SQL Server 2005中SQL Management Studio中只是一个IDE(集成开发环境)并且是不是SQL Server版本相同。

如果当您尝试附加数据库,如果你得到类似的错误如下:

“The database 'AdventureWorks2008' cannot be opened because it is version 655. This server supports version 612 and earlier. A downgrade path is not supported. Could not open new database 'AdventureWorks2008'. CREATE DATABASE is aborted. (Microsoft SQL Server, Error: 948)”.

这意味着,你正在试图数据库附加创建较新SQL版本那么你的电脑有什么,你会不是能够使用它。看看他们是否使用您的计算机使用的SQL Server的相同或更早版本创建的数据库。在这种情况下,我发现使用SQL Server 2005(版本9)创建的数据库相同。

一个快速的方法来检查计算机运行什么SQL Server版本,从Windows桌面,进入任务管理器(按Ctrl + Shift + Esc键),点击Processess选项卡上,找到并选择名为“sqlservr”的条目。EXE”,右击并选择属性,点击详细标签看看产品版本或文件版本(文件版本的年份和版本状态(出9 ...。) - 防爆2005.9 ...)。

相关问题