2012-03-21 80 views
1

我在Visual Studio 2010 Application Server中運行我的應用程序,但現在我已經將其更改爲使用IIS本地服務器,然後一切都崩潰了。我收到以下錯誤:CREATE DATABASE權限在數據庫'master'中被拒絕。同名數據庫存在

System.Data.SqlClient.SqlException: CREATE DATABASE permission denied in database 'master'.
An attempt to attach an auto-named database for file D:\Code\EMSApplication\EMSApplication.Web\App_Data\ASPNETDB.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.

我已將IIS的默認Web站點的應用程序池設置更改爲Classic .NET AppPool。

enter image description here

也改變了傳統的.NET程序池的身份爲本地系統。

enter image description here

我還設置了網絡服務的權限完全

enter image description here

連接字符串:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.mdf;Integrated Security=True 

但是沒有一次成功。我仍然遇到這個錯誤。任何建議對我都很有幫助。

謝謝。


我使用SQL Server 2008 Express的附帶安裝Visual Studio 2010中

+0

我不確定是否考慮這個題外話題......這不是一個真正的編程問題(更多的是系統管理問題),但它可能是每個使用數據庫的開發人員應該知道該怎麼做。 – 2012-03-21 16:37:06

+0

你知道你沒有包括在這裏嗎?有關SQL服務器或現有數據庫的任何信息。你不認爲這將是恰當的,特別是考慮到錯誤信息的措辭? – cHao 2012-03-21 16:37:17

+0

@cHao我已經更新了我的答案。該數據庫是Visual Studio 2010附帶的Sql Server 2008. – 2012-03-21 16:42:01

回答

6

的問題是,很顯然,你已經擁有附加到SQL Server實例名爲ASPNETDB數據庫。我的假設是,VS開發Web服務器仍在運行,這就是數據庫附加的內容。如果是這樣,只需關閉它並嘗試IIS重新啓動,你應該很好。如果沒有,請去download SSMS Express,連接到本地的SQLExpress實例,並嘗試從那裏分離現有的數據庫。

相關問題