首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

VS2010 連接 SQL Server 錯誤:App_Data 下 mdf 檔案附加失敗

     編輯:程式設計綜合問答

錯誤訊息

嘗試為檔案 ...\App_Data\aspnetdb.mdf 附加自動命名的資料庫,但失敗。
已存在同名的資料庫,或指定的檔案無法開啟或位於 UNC 共用目錄中。

原因

連接字串中使用 `AttachDbFilename=|DataDirectory|\aspnetdb.mdf`,但 SQL Server Express 實例中已有同名資料庫,或 `.mdf` 檔案被鎖定/權限不足/路徑錯誤。

解決步驟

  1. 檢查 SQL Server 實例:在 SSMS 中查看是否已掛載同名資料庫,若有則卸離或重命名。
  2. 確認檔案權限:確保執行 IIS/ASP.NET 的身分(如 `IIS_IUSRS`)對 `App_Data` 資料夾有讀寫權限。
  3. 修正連接字串:在 `Web.config` 中明確指定 `Initial Catalog` 避免自動命名衝突,例如:
    <add name="MyConn" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\aspnetdb.mdf;Integrated Security=True;User Instance=True;Initial Catalog=MyAppDB" />
  4. 避免 UNC 路徑:專案放在本機磁碟,而非網路共用。

自行解決心得

原專案 `DbHelper` 靜態連接字串欄位名稱與 `Web.config` 中的 `name` 不對應,導致讀取錯誤連接字串。修正對應關係後問題解決。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved