我在 Visual Studio 2010 应用程序服务器中运行我的应用程序,但现在我将其更改为使用 IIS 本地服务器,然后一切都崩溃了。我收到以下错误:
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 默认网站的应用程序池设置更改为经典 .NET AppPool。
还将 Classic .NET AppPool 的标识更改为 LocalSystem。
我也把NETWORK SERVICE的权限设置为Full
连接字符串是:
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.mdf;Integrated Security=True
但他们都没有工作。我仍然收到该错误。任何建议都会对我很有帮助。
谢谢。
我正在使用安装 Visual Studio 2010 时附带的 SQL Server 2008 Express。
最佳答案
问题很明显,您已经有一个名为 ASPNETDB 的数据库附加到该 SQL Server 实例。我的假设是 VS 开发 Web 服务器仍在运行,这就是附加数据库的原因。如果是这样,只需将其关闭并尝试重新启动 IIS,就可以了。如果不行,去download SSMS Express ,连接到您的本地 SQLExpress 实例,并尝试从那里分离现有数据库。
关于c# - 数据库 'master' 中的 CREATE DATABASE 权限被拒绝。存在同名数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808731/