【问题标题】:SQL Compact 4.0 can't open/read sdf fileSQL Compact 4.0 无法打开/读取 sdf 文件
【发布时间】:2011-05-03 12:29:54
【问题描述】:

我已经通过 WPI 安装了 SQL Compact 4.0 CTP 2,并使用 NUPack 在我的项目中添加了 SQLCE.EntityFramework。 它可以完美编译和运行,但我无法在 Visual Studio 2010 的服务器资源管理器中打开 SDF 文件。

当我尝试时,我总是收到以下消息:


微软视觉工作室

这不是有效的 SQL Server Compact 数据库文件或当前 SQL Server Compact 引擎不支持此文件版本。

好的

我已经尝试卸载并重新安装所有内容。

它也无法在 SQL Server 2008 R2 Management Studio 中打开。

请帮忙!!

【问题讨论】:

标签: visual-studio-2010 sql-server-ce


【解决方案1】:

当我被告知双击“Movies.sdf”文件以查看表格或其他信息时,我在尝试跟进 asp.net 提供的 MVC3 (MvcMovie) 教程时遇到了同样的问题。

其实解决方案就在请求的下方:

注意如果双击 Movies.sdf 时出现错误,请确保 你已经安装了SQL Server Compact 4.0(运行时+工具支持)。 (有关软件的链接,请参阅第 1 部分的先决条件列表 本教程系列。)如果您现在安装该版本,则必须 关闭并重新打开 Visual Web Developer。

安装Sql Server Compact 4.0(runtime+tools support)后,问题解决。

【讨论】:

    【解决方案2】:

    安装这个(Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0)完美地为我解决了这个问题: http://go.microsoft.com/fwlink/?LinkId=212219

    从这个帖子给 ErikEJ 的道具: http://forums.asp.net/t/1811963.aspx/1

    【讨论】:

      【解决方案3】:

      这个问题有点老了。但我认为答案是VS2010 SP1只有SQLCE 3.5和SQLCE 3.5 x64,没有SQL Compact 4.0。 SQL 产品与 Studio 一起提供。 Studio 2010 的发行版(我使用的是 Express 版)在 2012 年的今天仍然没有 SQLCE 4.0。

      这个版本打包不是直接的根本原因,只是一个线索,不同的版本需要额外的努力。

      修复应该涉及在 Visual Studio 使用的 .NET Framework 中注册“数据提供程序”。 查看 c:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config 中的“DbProviderFactories”。本节介绍 .NET 和 Studio 可以使用哪些数据提供程序。

      如果那里有意外的条目,请尝试修复框架或手动注册提供程序。为此,将需要一些低级注册工具。说 asp.net 提供商有 aspnet_regsql.exe 等。但对于 SQLCE 本身来说,肯定有类似的东西。

      <system.data>
          <DbProviderFactories>
             <add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
          </DbProviderFactories>
      </system.data>
      

      损坏的 Studio 和正常工作的 App 之间的区别在于,它们都使用相同的框架,但在配置中具有不同的提供程序。 (或者应用程序使用其他技术来选择 DLL 并打开 SDF)

      回答:从 SP1 开始,正式可以在 Studio 2010 SP1 中使用 SQLCE4.0(感谢 Nathan Fisher 提供链接http://support.microsoft.com/kb/983509

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-25
      • 1970-01-01
      • 2011-11-19
      • 1970-01-01
      相关资源
      最近更新 更多