无法打开物理文件操作系统错误32

时间:2011-06-14 17:06:27

标签: c# asp.net sql exception web-config

好吧,我这样做了下面的错误,没有线索为什么数据库连接失败。

  1. 创建新的ASP.NET网站

  2. 将新的* .mdf数据库添加到App_Data

  3. 使用Visual Studio中的服务器资源管理器

  4. 向其中添加一些表
  5. 右键单击“数据库”和“复制连接”字符串。将其插入WebConfig文件,如下所示

    <connectionStrings>
        <add name="DB" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=C:\inetpub\wwwroot\gs\App_Data\db.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
    
  6. 添加一些代码以从

    获取数据
    selectStatement = "select * from users";
    SqlDataAdapter da = new SqlDataAdapter(selectStatement,
    ConfigurationManager.ConnectionStrings["DB"].ConnectionString);
    DataTable dtUsers = new DataTable();
    da.Fill(dtUsers);
    GridView1.DataSource = dtUsers.DefaultView;
    GridView1.DataBind();
    
  7. 和zoot你得到错误

5 个答案:

答案 0 :(得分:9)

我有一种偷偷摸摸的怀疑,它与权限有关。完全控制“经过身份验证的用户”。

如果你想知道怎么做 - 我在Windows 7上,步骤如下:

  • 右键单击MDF文件,然后单击属性。
  • 选择“安全”标签,然后选择“经过身份验证的用户”(或 看起来正确的东西)。
  • 单击“编辑”,然后选中“完全控制”的“允许”复选框。
  • 一直都好。

HTH

答案 1 :(得分:1)

来自top resultGoogle似乎解决了您的问题:

  

如果有人仍然在寻找这个错误的解决方案,这对我有用:

     

1)打开VStudio项目   您需要连接到SQL数据库

     

2)另外,转到   开始 - &GT;运行 - &GT; SERVICES.MSC

     

3)寻找   SQL Server(SQLEXPRESS)服务和   停止它

     

4)再次启动

     

5)尝试   现在连接你的数据库。

     

看起来它起作用的原因   与用户实例有关   正在进行的讨论   线程。

答案 2 :(得分:1)

我正在努力解决这个错误,我发现错误发生在联机的数据库实例中,所以我将它从SQLserver管理工作室脱机,我已经分享了所遵循的步骤和解决方案HERE < / p>

答案 3 :(得分:1)

在我的情况下,我在尝试将它附加到SQLEXPRESS时,在实例MSSQLSERVER中有数据库。从第一个实例中删除释放文件。

答案 4 :(得分:0)

关于错误:操作系统错误32,打开错误...

首先关闭所有,授予mdf文件权限。在我的情况下,NETWORK SERVICE帐户在 data.mdf 上拥有完全访问权限。

好吧,我的工作区:

  1. SSMS附加了data.mdf
  2. 同时在VS2010中我使用相同的数据库文件打开解决方案: data.mdf ,但无法成功连接。
  3. 解决方案:在CONNECTION PROPERTIESUSER INSTANCETRUE更改为FALSE并刷新此数据库中VS内的连接。 最后,没有更多的打开错误,您可以从SSMS和VS2010同时访问同一个数据库文件。

    连接字符串示例:

    DataSource=.\SQLEXPRESS;AttachDbFilename=D:\Contracts\App_Data\data.mdf;Integrated Security=True;User Instance=False
    

    此致

    的Drazen-ZG