从VB 2008 Express连接到SQL Server 2008 Express

时间:2010-03-05 00:26:40

标签: vb.net sql-server-express sql-server-2008-express

我正在为我们的大学项目使用VB 2008 Express。我还运行SQL Server 2008 Express并安装了SQL Server Management Studio并用它来创建我的数据库。

这两个软件都已安装并在本地运行。我正在尝试从VB 2008 Express连接到数据库。数据库连接向导有3个选项:

  1. 连接到Access db
  2. 连接到SQL Server 3.5 compact db和
  3. 连接到SQL Server db文件。
  4. 连接到前两个没有问题,但是当我尝试连接到我的SQL服务器数据库文件(.mdf)时,它会抛出以下错误(“无法打开物理文件....操作系统错误32: (无法检索此错误的文本。原因:1815 .......尝试为文件附加自动命名的数据库...... .mdf失败。存在或指定了具有相同名称的数据库文件无法打开,或者它位于UNC共享“)

    如果有经验并克服这个问题的人能指出我正确的方向,我感激不尽。

    非常感谢。 小动物。

1 个答案:

答案 0 :(得分:2)

您需要从服务器分离数据库。由于您在那里创建了文件,因此它已在SQL Express服务器上运行。操作系统错误32是共享冲突,这意味着该文件正在使用中。

试试这个:

  1. 打开Sql Express 2008 Managment Studio,在对象资源管理器树中找到您的数据库。
  2. 右键单击数据库,选择任务,然后选择“分离”
  3. 出现“分离数据库”对话框时,选中“删除连接”
  4. 复选框
  5. 点击确定。
  6. 您的数据库应与数据库服务器分离。现在,服务器将不再自动启动该数据库,您应该能够获得对它的独占访问权限。

    请注意,如果要对MDF进行更多编辑,则必须重新附加数据库,或者需要使用VB 2008 Express中内置的工具。因此,大多数人会选择保留附加的数据库,而不是将其作为“用户实例”运行。请查看此链接,了解获取数据的其他方式:How to: Access and Initialize Server Explorer/Database Explorer

    无论如何,您可能有理由以这种方式进行设置。上面列出的步骤可以解决您的问题。祝你的项目好运!