SQL Server CE数据库版本不兼容

本文关键字:版本 不兼容 数据库 CE Server SQL | 更新日期: 2023-09-27 18:13:22

我有一个SQL Server CE 4.0数据库(.sdf文件),当我尝试从我的应用程序(WPF)对数据库进行查询时,我得到以下错误。

数据库版本不兼容。如果这是一个兼容的文件,运行修复。其他情况请参考文档。[数据库版本= 4000000,请求版本= 3505053,文件名= '?'C:'Database'ShortageReport'MRPDatabase.sdf]

  • 我已经检查了SQL Server CE 4 sp1是否安装。
  • 我尝试在两个数据库中创建数据库。Net 4和vs2012中的连接设置。
  • 我正在运行windows 7 64bit
  • 我的连接字符串存储在app.config

我使用SQL Server Compact Toolbox来生成上下文和映射。

My app.config:

<connectionStrings>
    <add name="DatabaseContext" 
         providerName="System.Data.SqlServerCe.4.0" 
         connectionString="Data Source=C:'Database'ShortageReport'MRPDatabase.sdf"/>
</connectionStrings>

任何想法?

SQL Server CE数据库版本不兼容

添加对4.0 System.Data.SqlServerCe.dll ADO的引用。净提供者

然后用SqlCeConnection(4.0)对象初始化DataContext类。

using (SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:'projects'Chinook'Chinook40.sdf"))
{
    using (Chinook db = new Chinook(conn))
    {
        var list = db.Album.ToList();
        if (list.Count > 0)
            System.Diagnostics.Debug.Print("It works!");
    }
}

我从以下路径更新了SqlServerCe.dll引用,并且它修复了

参考路径:

C:'Program Files'Microsoft SQL Server Compact Edition'v4.0'Desktop'System.Data.SqlServerCe.dll

我发现在类似的问题和卸载所有框架SQL Server Compact 3.5和SQL Server Compact 3.5 SP1我已经解决了这个问题。

欢呼,