fastdo  0.6.8
eiendb::SqlBackup类 参考

数据库备份器。把数据备份成SQL脚本,方便跨数据库转移。 更多...

#include <eiendb_common.hpp>

struct  BackupProgressData
 备份的进度数据 更多...
 

Public 类型

enum  BackupProgressType { bptNone, bptBackupData, bptBackupStruct }
 备份进度种类 更多...
 
typedef bool(* ProgressCallback) (SqlBackup *backup, BackupProgressData *data, void *param)
 SqlBackup的进度回调函数指针类型 更多...
 

Public 成员函数

 SqlBackup (IDbConnection *cnn, winux::IFile *file, IDbConnection *compatible=NULL)
 备份器构造函数 更多...
 
void backupTableStructure (winux::String const &tableName)
 备份表结构 更多...
 
void backupTableData (winux::String const &tableName, bool noDeleteFrom=false, ProgressCallback progress=NULL, void *param=NULL)
 备份表数据 更多...
 
void backupDb (bool backupStructure=true, bool noDeleteFrom=false, ProgressCallback progress=NULL, void *param=NULL)
 备份数据库 更多...
 
bool resumeDb (bool onErrorNext=false, SqlScript::ProgressCallback progress=NULL, void *param=NULL)
 恢复数据库 更多...
 

详细描述

数据库备份器。把数据备份成SQL脚本,方便跨数据库转移。

在文件 eiendb_common.hpp124 行定义.

成员类型定义说明

typedef bool(* eiendb::SqlBackup::ProgressCallback) (SqlBackup *backup, BackupProgressData *data, void *param)

SqlBackup的进度回调函数指针类型

在文件 eiendb_common.hpp157 行定义.

成员枚举类型说明

备份进度种类

枚举值
bptNone 

不在备份

bptBackupData 

备份数据

bptBackupStruct 

备份结构

在文件 eiendb_common.hpp137 行定义.

构造及析构函数说明

eiendb::SqlBackup::SqlBackup ( IDbConnection cnn,
winux::IFile file,
IDbConnection compatible = NULL 
)

备份器构造函数

譬如MySQL导到SQLite。此时cnn设为mysql,compatible设为sqlite。
数据将按照sqlite的语法规则导出sql脚本,以便sqlite数据库执行导入(只对数据备份有效,结构备份不行)。

参数
cnn连接器对象
file操作的文件
compatible兼容连接用来使数据按它的规则导出

成员函数说明

void eiendb::SqlBackup::backupDb ( bool  backupStructure = true,
bool  noDeleteFrom = false,
ProgressCallback  progress = NULL,
void *  param = NULL 
)

备份数据库

void eiendb::SqlBackup::backupTableData ( winux::String const &  tableName,
bool  noDeleteFrom = false,
ProgressCallback  progress = NULL,
void *  param = NULL 
)

备份表数据

参数
noDeleteFrom指示要不要生成DELETE FROM语句,从而在恢复数据时保留原数据
void eiendb::SqlBackup::backupTableStructure ( winux::String const &  tableName)

备份表结构

bool eiendb::SqlBackup::resumeDb ( bool  onErrorNext = false,
SqlScript::ProgressCallback  progress = NULL,
void *  param = NULL 
)

恢复数据库


该类的文档由以下文件生成: