demoshop

demo, trying to be the best_

LocalDB 是開發很好用的工具,它讓開發人員可以擁有獨立的開發資料庫,上線時也可以直接掛載到 MSSQL Server 內,自從推出以來受到非常多開發人員的愛戴,但如果你的專案會提供給其他人,那 LocalDB 的版本可能就會搞死你,像 SkillTree 的課程大量使用 LocalDB 每次都會遇到有幾個學員無法正常使用,主要原因是 Visual Studio 的版本和課程要求的不一致所導致,但不能用是事實因此每次都要花時間排除,為了更有效的降低類似的事件,所以就公開解決方式吧(其實官網有解法,但只是文字敘述,比較不討喜)

當使用 LocalDB 看到此錯誤訊息

連接到資料庫時發生錯誤,資料庫可能無法使用,發生類型 Microsoft.Data.ConnectionUI.SqlDatabaseFileUpgradeRequiredException 的例外狀況,錯誤訊息是: '這個資料庫檔案與目前的 SQL Server 執行個體不相容。
若要解決這個問題,您必須建立新的資料連結,以升級資料庫檔案,或者將現有連接修改成這個資料庫檔案。
如需詳細資訊,請參閱
https://go.microsoft.com/fwlink/?LinkId=235986'。

就表示 LocalDB 版本不同,之前每一版的 LocalDB 連線字串都不同

(localdb)\ProjectsV12

(localdb)\ProjectsV13

但是在 Visual Studio 2015 後已經統一改為

(localdb)\MSSQLLocalDB

如果你對於 (localdb)\MSSQLLocalDB 連線字串是表示哪一版本的 LocalDB 您可以參考這篇文章 https://msdn.microsoft.com/zh-tw/library/hh510202.aspx

解決步驟在 https://go.microsoft.com/fwlink/?LinkId=235986 寫得很清楚,以下就是圖解說明囉。


開啟「伺服器總管」在「資料連接」按「滑鼠右鍵」後選擇「加入連接」

依據下圖輸入連線字串

  1. ​伺服器名稱就直接輸入 (localdb)\MSSQLLocalDB 即可
  2. 選擇你要附加的 LocalDB 實體檔案(也就是 mdf 檔)
  3. 隨便給它一個名字
  4. 按下「確定」你按「測試連結」一樣會報錯的 XD

按下確定後還會再確認一次,當然就是按「是」囉

這樣就完成了 LocalDB 升級的步驟,再一次連結就可以正常使用了

LocalDB 好用沒錯,但建議團隊的 VS 還是相同版本會比較好,而且請注意如果你本機的 LocalDB 版本低於要使用的,是無法降級的只能GG了。

下方再附上我提供給學員的 Sway ,內容有介紹怎麼查詢機器有多少 LocalDB 執行個體,還有怎麼建立北風測試資料庫到 LocalDB 中,有需要的話也歡迎參考囉

 

回應討論