CDaoWorkspace::CompactDatabase

调用该成员函数的压缩一个指定的Microsoft Jet (.MDB)数据库。

static void PASCAL CompactDatabase( 
   LPCTSTR lpszSrcName, 
   LPCTSTR lpszDestName, 
   LPCTSTR lpszLocale = dbLangGeneral, 
   int nOptions = 0  
);
static void PASCAL CompactDatabase( 
   LPCTSTR lpszSrcName, 
   LPCTSTR lpszDestName, 
   LPCTSTR lpszLocale, 
   int nOptions, 
   LPCTSTR lpszPassword  
);

参数

  • lpszSrcName
    存在,关闭数据库的名称。 它可以是完整路径和文件名,例如“C:\ \ MYDB.MDB”。 如果文件名的扩展名,必须指定它。 如果您的网络支持统一命名约定(UNC),还可以指定一个网络路径,例如“\ \ \ \ MYSERVER \ \ MYSHARE \ \ MYDIR \ \ MYDB.MDB”。 (双精度杠在路径字符串需要,因为“\”是C++转义字符。)

  • lpszDestName
    您创建压缩数据库的完整路径。 还可以指定一个网络路径具有 lpszSrcName的。 不能使用 lpszDestName 参数指定数据库文件和 lpszSrcName相同。

  • lpszPassword
    密码,使用要何时压缩一个密码保护的数据库。 请注意,如果使用采用密码 CompactDatabase 版本,必须提供所有参数。 此外,因为这是连接参数,则需要特殊格式,如下所示:; PWD=lpszPassword。 例如:; "适合”的PWD=。 (需要该驱动的分号。)

  • lpszLocale
    用于的字符串表达式用于创建 lpszDestName指定排序顺序。 如果您采用 dbLangGeneral (下文)的默认省略此参数,新数据库的区域设置是与旧数据库。 可能的值包括:

    • dbLangGeneral 英语,则,法语,葡萄牙语,、和现代西班牙语

    • dbLangArabic 阿拉伯语

    • dbLangCyrillic 俄语

    • dbLangCzech 捷克语

    • dbLangDutch 荷兰语

    • dbLangGreek 希腊语

    • dbLangHebrew 希伯来语

    • dbLangHungarian 匈牙利语

    • dbLangIcelandic 冰岛语

    • dbLangNordic 北欧语言(Microsoft Jet数据库引擎1.0版只)

    • 丹麦语的dbLangNorwdan 挪威语和

    • dbLangPolish 波兰语

    • dbLangSpanish 传统西班牙语

    • 芬兰语的dbLangSwedfin 和瑞典语

    • dbLangTurkish 土耳其语

  • nOptions
    指示目标数据库,lpszDestName的一个或多个选项卡。 如果通过接受默认省略此参数,lpszDestName 都具有相同的加密和版本和 lpszSrcName相同。 使用按位或运算符,则可以将 dbEncryptdbDecrypt 选项与一个版本选项。 可能的值,指定数据库格式,而不是数据库引擎版本,即:

    • dbEncrypt 加密该数据库,当压缩时。

    • dbDecrypt 解密数据库,则压缩时。

    • dbVersion10 创建使用Microsoft Jet数据库引擎1.0版中,在压缩时的数据库。

    • dbVersion11 创建使用Microsoft Jet数据库引擎1.1版中,在压缩时的数据库。

    • dbVersion20 创建使用Microsoft Jet数据库引擎2.0版中,在压缩时的数据库。

    • dbVersion30 创建使用Microsoft Jet数据库引擎3.0版中,在压缩时的数据库。

    当压缩,您是否在可选参数可以使用 dbEncryptdbDecrypt 指定加密或解密该数据库。 如果省略常数一的加密,或者包括 dbDecryptdbEncrypt,lpszDestName 将具有加密和 lpszSrcName相同。 在可选参数可以使用一个版本常数为压缩的数据库指定数据格式的版本。 该常数影响 lpszDestName的数据仅版本。 只能指定一个版本常数。 如果省略一个版本常数,lpszDestName 将具有版本和 lpszSrcName相同。 可以只压缩 lpszDestName 到高于相同的或 lpszSrcName的版本。

    警告

    如果数据库不进行加密,因此,即使您实现用户/密码安全性是,可以直接读取构成该数据库的二进制磁盘文件。

备注

因为在数据库中的数据发生更改,数据库文件比需要能凌乱不整和使用更多磁盘空间。 循环,应压缩您的数据库。defragment数据库文件。 该压缩数据库通常较小。 当您复制和压缩该数据库时,还可以选择更改排列的顺序、加密或数据格式的版本。

警告

CompactDatabase 成员函数不会正确地将从一个版本的完整Microsoft Access数据库到另一个。只转换数据格式。Microsoft Access定义对象,如窗体,因此,不转换报告。但是,正确地将该数据。

提示

还可以使用 CompactDatabase 复制数据库文件。

有关压缩数据库的更多信息,请参见主题“CompactDatabase方法” DAO帮助。

要求

Header: afxdao.h

请参见

参考

CDaoWorkspace选件类

层次结构图

CDaoWorkspace::RepairDatabase