【问题标题】:SQL Compact Database larger than configured sizeSQL Compact 数据库大于配置的大小
【发布时间】:2011-06-03 20:31:48
【问题描述】:

我正在尝试在 Windows Mobile 6.1 中搜索移动 SDF 数据库,该数据库约为 270MB。每当程序尝试从数据库中读取时,我都会收到此错误:

"数据库文件大于配置的大小。
此设置仅对第一个并发数据库连接生效[所需的最大数据库大小(以 MB 为单位;如果未知,则为 0)=0]"

我尝试在连接字符串中指定大小,但也出现错误:

public bool ConnectDB(string strDB, string strPassword)
{
    try
    {
        string siz= "300";
        string connStr = "Data Source = " + strDB + "; Size = " + siz + "; Password = " + strPassword + ";";
        ceConnection = new SqlCeConnection(connStr);
        ceConnection.Open();
        if (ceConnection.State == System.Data.ConnectionState.Open)
            return true;
    } catch () {}
}

我收到unknown connection option in connection string: Size

请帮忙。

【问题讨论】:

  • 270MB 的移动数据库相当疯狂!尝试使用MaxDatabaseSize=2048

标签: windows-mobile sql-server-ce


【解决方案1】:

您必须使用“最大数据库大小”(以 MB 为单位)

"Data Source = " + strDB + "; Max Database Size = " + siz 

【讨论】:

    【解决方案2】:

    270 MB 对于移动数据库来说太大了。你试过压缩它吗?您可以使用 SqlCeEngine 类。试试 Shrink() 或 Compact()

    http://msdn.microsoft.com/en-us/library/system.data.sqlserverce.sqlceengine.shrink.aspx

    http://msdn.microsoft.com/en-us/library/system.data.sqlserverce.sqlceengine.compact.aspx

    【讨论】:

    • 可能不会太大。这取决于它的用途和查询方式。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多