【问题标题】:CompactDatabase with dbEncrypt returns "3001: Invalid argument" error带有 dbEncrypt 的 CompactDatabase 返回“3001:无效参数”错误
【发布时间】:2012-12-27 11:11:34
【问题描述】:

我在尝试时收到3001: Invalid argument 错误:

DbEngine.CompactDatabase "db1.accdb", "db2.accdb", , dbEncrypt

我相信该函数使用的是ACEDAO.DLL 14.0.6016.1000 版

错误的原因可能是什么?这似乎只发生在dbEncrypt

【问题讨论】:

    标签: ms-access vb6 ms-access-2010 ms-jet-ace compact-database


    【解决方案1】:

    如 Remou 的回答中提到的文章中指出,dbEncrypt 需要密码:

    CompactDatabase firstdb, seconddb, ";pwd=secret", dbEncrypt
    

    似乎也无法在同一个调用中完成升级,因此我需要两行代码将旧的MDB 升级为加密的ACCDB。注意密码在每一行的位置:

    CompactDatabase oldMDB, encryptedDb, ";pwd=secret", dbEncrypt
    CompactDatabase encryptedDb, upgradedDb, , dbVersion120, ";pwd=secret"
    

    以下不起作用并给出Invalid argument 错误:

    CompactDatabase oldMDB, encryptedAccdb, ";pwd=secret", dbEncrypt + dbVersion120

    【讨论】:

      【解决方案2】:

      好像是密码:http://social.msdn.microsoft.com/Forums/et-EE/accessdev/thread/317b025c-07ff-4c84-883f-5f602e88af9d

      DbEngine.CompactDatabase "db1.accdb", "db2.accdb", ";pwd=apass"
      

      当打开 db2.accdb 时,可以选择解密数据库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-02-26
        • 1970-01-01
        • 2022-01-07
        • 1970-01-01
        • 1970-01-01
        • 2012-08-28
        • 1970-01-01
        相关资源
        最近更新 更多