【问题标题】:Error with SQL Server database in Visual Studio after using LINQPad使用 LINQPad 后 Visual Studio 中的 SQL Server 数据库出错
【发布时间】:2013-02-12 19:26:19
【问题描述】:

我有一个 SQL Server 数据库,用于 VS 2010 中的 MVC 4 项目。我正在使用 LINQPad 对我的数据库运行查询。当我打开 LINQPad 时,我可以连接到我的 .mdf 数据库文件并按预期运行查询。当我关闭 LINQPad,打开 VS 并尝试在服务器资源管理器中查看我的数据库时,会显示以下错误:

我可以删除数据库并通过包管理器中的 Update-Database 命令运行 Seed() 方法作为解决该错误的方法,但是每次连接到数据库时都必须这样做有点麻烦通过 LINQPad。

编辑(对于那些看不到图像的人):

无法打开数据库“C:..... .MDF”,因为它是版本 706。此服务器支持版本 655 和更早版本。不支持降级路径。无法打开新数据库“C:..... .MDF”。 CREATE DATABASE 已中止。尝试为“C:..... .MDF”附加自动命名的数据库文件失败。存在同名数据库,或指定文件无法打开,或位于 UNC 共享上。

这是一个常见错误吗?谁有解决办法?

【问题讨论】:

  • 图片让我们这些在办公室过滤掉图片的人生活难过 :(

标签: c# sql-server visual-studio-2010 linqpad


【解决方案1】:

根据错误消息,您正在使用 Visual Studio 2010 db 项目访问 SQL Server 2012。

这是 MSDN 解决方法

http://connect.microsoft.com/SQLServer/feedback/details/731860/unable-to-create-a-sql-server-2012-projects-in-visual-studio-2010


看起来 linqPad 可能正在做一些事情来“升级”?不同版本的 linqPad 也可能有所帮助。

【讨论】:

  • 这不是仅适用于尝试在 VS 2010 中创建 SQL Server 2012 项目的人吗?我已经安装了 VS2010 SP1,并且可以从 VS 将 SQL S2012 数据库添加到我的项目中。我的问题是,一旦我用 LINQPad 连接到我的数据库,在我用完 LINQPad 后,我就无法在 VS 中使用我的数据库了。
  • 是的,我认为正在发生的事情是 LP 使用的是 2012 驱动程序,而 VS 使用的是 2010。这听起来像是为 VS 启用了 2012 驱动程序,所以一切都将使用相同的东西。无法重现您的问题,所以我无法测试。 YMMV
【解决方案2】:

在使用损坏的 Microsoft SQL Server 时,您会遇到 SQL Server 的意外行为。为了有效地解决 SQL Server 的此类问题,RecoveryFIX for SQL Database Recovery 就是这样一款熟练的第三方工具。通过使用此工具,您可以轻松地从损坏的 Microsoft SQL 服务器的所有版本中恢复丢失、损坏或无法访问的 SQL 数据库文件。

谢谢

【讨论】:

    猜你喜欢
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多