以下是我如何创建/连接/使用我的数据库的示例代码
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语句中?
关于可能出错的任何其他想法。
答案 0 :(得分:2)
最大数据库大小的默认值是256 MB,所以是的,如果文件大小超过此值,则需要将其添加到连接字符串中。
答案 1 :(得分:0)
正如ErikEJ所说,这就是连接字符串必须是:
“数据源= MyData.sdf; 最大数据库大小= 256 ;持久安全信息=假;”
您可以用所需的大小替换256.