[ADO.NET错误]:数据库'master'中的CREATE DATABASE权限被拒绝。尝试为文件HelloWorld.mdf附加自动命名的数据库失败

时间:2008-08-18 16:33:47

标签: sql-server database ado.net sql-server-express

  

数据库'master'中的CREATE DATABASE权限被拒绝。   尝试为文件附加自动命名的数据库   C:\ Documents and Settings \ .. \ App_Data \ HelloWorld.mdf失败。   存在同名的数据库,或者指定的文件不能存在   打开,或者它位于UNC分享。

我找到了这些链接:

7 个答案:

答案 0 :(得分:4)

通常,用于运行SQL Server服务的用户将无法访问您的个人用户文件夹,这就是您收到错误的原因。您需要更改用于服务的凭据,或者将数据库移动到另一个文件夹,这样就可以了解您的情况。

答案 1 :(得分:2)

我今天在mvc3和实体框架代码中首先遇到了复合问题。

我的SqlExpress安装搞砸了(权限问题)所以我切换到了SqlCE。

我的ConnectionString.Name属性与我的“ProjectNameContext”类名不匹配。

找不到连接字符串时,它使用默认约定。默认约定是指我的SqlExpress服务,其数据库名称类似于“ProjectNameContext”。权限搞砸了,所以当我以为我在使用SqlSE时,我在SqlExpress上获得了权限错误

答案 2 :(得分:2)

对于我来说,在web.config文件的system.web标记下设置了这个标记有很多帮助:

<system.web>
    <identity impersonate="true" userName="admin_user" password="admin_password" />
...

希望这可以帮助某人

答案 3 :(得分:1)

我也遇到了同样的问题,最后我找到了解决方案 - 解决方案 - 简单地将数据库从App_Data文件夹移动或剪切到任何位置(例如,桌面),然后将DataBase移动或剪切到App_Data文件夹。 就是它..........

希望它有用!

答案 4 :(得分:0)

是的,之前的附件没有正确连接,或者是手动附加的。进入Management Studio连接到数据库,并断开看起来像文件路径的长数据库名称。然后再试一次它应该有用。

答案 5 :(得分:0)

对于像我这样的人来说,添加&#34; User Instance = true&#34;到您的连接字符串

答案 6 :(得分:0)

我的朋友只使用另一个目录即C:\ TEMP来修复它。我认为这只是权限问题。