2012-03-21 101 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实例,并尝试从那里分离现有的数据库。

相关问题