2011-07-21 88 views
3

我在使用SQL Server 2008 R2創建的我的App_Data文件夾中有一個數據庫。我安裝了SQL Server 2008 R2,但仍然無法運行該項目並打開數據庫,因爲「該服務器支持版本655及更低版本」。

當我嘗試查看網頁,我得到這個錯誤信息:

數據庫「C:\我的項目\ NCPA \ APP_DATA \ NCPA.MDF」無法打開 ,因爲它是661版本。此服務器較早版本支持版本655和 。降級路徑不受支持。

無法打開新數據庫'C:\ My Projects \ NCPA \ APP_DATA \ NCPA.MDF'。 CREATE DATABASE被中止。

嘗試爲文件C:\ My Projects \ NCPA \ APP_DATA \ NCPA.MDF附加自動命名數據庫失敗。存在與數據庫同名的數據庫 ,或指定的文件無法打開,或位於UNC 共享位置。

這裏是我的連接字符串:

<add name="NCPA" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NCPA.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /> 

我有SQL Server 2008 R2和安裝在我的電腦上的Visual Studio 2010。我已經全面搜索了這個問題,並且所有內容都顯示「您需要R2」,但我已經擁有了它。

我也看到,我需要通過去Tools > Options > Database Tools > Data Connections檢查SQL Server實例名稱,我的只是說SQLEXPRESS。是對的嗎?它應該是別的嗎?

我需要在這裏做什麼?有沒有我可能沒有安裝的東西?在Visual Studio中是否有需要更改的設置?我覺得我發現的每個解決方案都很模糊,或者解決方案是我已經完成的。

編輯:這裏是我,如果我啓動SQL Server和去Help > About

的Microsoft SQL Server Management Studio中 - 10.50.1617.0

微軟的Analysis Services客戶端工具 - 10.50 .1617.0

Microsoft數據訪問組件(MDAC) - 6.1.7600.16385

微軟MSXML - 3.0 4.0 6.0

的Microsoft Internet Explorer - 9.0.8112.16421

的Microsoft .NET Framework - 2.0.50727.4961

操作系統 - 6.1.7600

+0

你的配置是正確的,我不認爲這是數據庫文件的問題,問題是SQL服務器的版本比你的數據庫創建的版本舊。 – raym0nd

+0

[.mdf太可能是重複的(661)我的數據庫支持版本655](http://stackoverflow.com/questions/2462919/mdf-is-too-new-661-my-database-supports-version- 655) – Gabe

+0

不傾向於投票結束,因爲這個OP已經聲明他已經安裝了R2。在相關問題中,OP在提問之前沒有做過任何類似的事情。 –

回答

6

雖然你可能已經安裝了SQL Server 2008 R2,你確定你升級實例您使用的是R2?

使用R2媒體中的SQL Server安裝中心和「從SQL Server 2000,SQL Server 2005或SQL Server 2008升級」選項將您的SQLEXPRESS實例升級到R2。

+0

聽起來像這可能是問題...我已經安裝了SQL Server 2008 R2,有沒有辦法在安裝後升級實例? – Steven

+1

確實。根據我的文章,使用SQL Server 2008 R2安裝程序來執行此操作。而不是安裝新的實例,選擇升級現有的選項。 –

+0

好的,這是一個進步。但是我去了安裝中心,點擊'Upgrade'安裝,彈出一個對話框,詢問我「瀏覽SQL Server 2008 R2安裝介質」。我不知道我應該找什麼文件,我前一陣子安裝了這個文件。 – Steven

0

下載並重新安裝新的MS R2 SQL SERVER,當微軟更新某些東西時,它大部分時間都支持舊版本。

+1

他說他已經安裝了R2。你是否建議他應該重新安裝? –

+0

幾個月前我有同樣的問題,我安裝了R2,但仍然沒有工作,然後我下載了SQL Server的全新副本並重新安裝,重新啓動了我的計算機並且工作正常。 – raym0nd

+0

@ raym0nd - 必須比重新安裝SQL Server更簡單。 – Steven

1

你真的很確定你試圖附加數據庫的SQL Server是SQL Server 2008 R2

你的錯誤消息指出您的SQL Server只支持版本655,和一切,我發現關於這些版本號表示該版本655的SQL Server 2008(非R2):

如果你真的有SQL Server 2008 R2和它仍然無法正常工作,你會probabl Ÿ必須重新安裝服務器,如raym0nd在評論中說his answer


編輯:
史蒂芬,沒有您發佈的數字是您的SQL Server的 「真實」 的版本號。
您可以通過在Management Studio的查詢窗口中運行select @@version來找到實際的版本號。
在我的機器,Help --> AboutMicrosoft SQL Server Management Studio - 10.50.1617.0喜歡你的機器上,但是當我運行select @@version我得到這個:

Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) Mar 29 2009 10:11:52 
    Copyright (c) 1988-2008 Microsoft Corporation Express Edition (64-bit) 
    on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) 

這裏來的怪異的一部分:
我100%肯定,我安裝了SQL Server 2008 R2在我的機器上。
事實上,在我的開始菜單中的SQL服務器上的東西說:「SQL Server 2008中R2」無處不在,你提到的Help --> About窗口中有一個巨大的SQL Server 2008 R2 標誌也。

但根據severallists我剛剛發現,10.0.2531.0是SQL Server 2008 SP1。
所以我的安裝似乎也搞砸了。
奇怪,很奇怪...

+0

我很確定。我編輯了我的原始文章以包含組件名稱和版本信息。看一看,看看你是否看到任何奇怪的東西。 – Steven

+0

我在**我的**機器上看到奇怪的東西 - 請參閱上面的內容,我也編輯了我的答案! –

1

我的猜測是你的代碼試圖連接到與Visual Studio 2010一起安裝的數據庫實例,而不是你已經安裝的SQL Server 2008 R2實例。

+0

好的。那麼我能做些什麼來改變這一點?有沒有辦法告訴我的代碼連接到哪一個? – Steven

+0

您的連接字符串部分說'數據源=。\ SQLEXPRESS'告訴它使用VS2010附帶的那個。如果您在Management Studio中執行「select @@ ServerName」,它應該告訴您要使用的實例名稱。 – Gabe

0

這裏有什麼對我沒有任何更新的工作!

  1. 在Visual Studio - >服務器資源管理器 - >添加新連接
  2. 更改數據源的Microsoft SQL Server
  3. 服務器名:我的計算機的名稱or本地主機
  4. 在下降下載列表選擇你想要的數據庫

一切工作正常!沒有更新和沒有661問題!

1

我遇到了類似的問題,試圖武官在另一臺機器上運行的SQL Server 2008 R2快速上創建一個.MDF文件,我的機器上的SQL Server 2008 R2快速..

當時我並安裝2008(非R2),然後是2008 R2在我的機器上。

花費數小時Google找到一個解決方案,最終未果後,我乾脆決定從here下載安裝程序SQLEXPR_x64_ENU.exe並再次運行它,希望它會解決(的Windows 7 64位)

在安裝在安裝嚮導下,我選擇從SQL Server 2000,SQL Server 2005或SQL Server 2008升級,並繼續按下一步直到它消失(顯然,您必須等到它完成處理每一步)。

就是這樣。我能夠附加相同的文件..

+0

@Bishan *請不要使用代碼格式來突出顯示內容;它應該*僅用於實際代碼。您突出顯示所有這些產品名稱的方式會使事情變得更加難以閱讀! –

相關問題