SqlServerCE版本3.5 SP2 - 数据库文件大于配置的最大值

时间:2011-03-16 18:46:46

标签: .net-4.0 c#-4.0 sql-server-ce

以下是我如何创建/连接/使用我的数据库的示例代码

string connection = @"Data Source='C:\test.sdf';Max Database Size=4000;"
    + "Max Buffer Size=4096;";
File.Delete(@"C:\test.sdf");
using (var engine = new SqlCeEngine(connection))
{
    engine.CreateDatabase();
    engine.Compact("Data Source=; Case Sensitive=True; Max Database Size=4000;");
}

using (var dbConn = new SqlCeConnection(connection))
{
    // Create tables, indexes, etc, and insert loads of data here
    // Somewhere in the loading of data I get
    // the "Database file is larger..." exception
}

这是我的问题。异常时的数据库文件大小仅为368 MB(根据文件属性确切为386,879,488字节)。我是否需要将最大数据库大小字符串添加到Compact语句中?

关于可能出错的任何其他想法。

2 个答案:

答案 0 :(得分:2)

最大数据库大小的默认值是256 MB,所以是的,如果文件大小超过此值,则需要将其添加到连接字符串中。

答案 1 :(得分:0)

正如ErikEJ所说,这就是连接字符串必须是:

“数据源= MyData.sdf; 最大数据库大小= 256 ;持久安全信息=假;”

您可以用所需的大小替换256.