ASA Programming Guide
The Database Tools Interface
DBTools structures
Holds information needed to unload a database using the DBTools library or extract a remote database for SQL Remote. Those fields used by the dbxtract SQL Remote extraction utility are indicated.
typedef struct an_unload_db {
unsigned short version;
const char * connectparms;
const char * startline;
const char * temp_dir;
const char * reload_filename;
MSG_CALLBACK errorrtn;
MSG_CALLBACK msgrtn;
MSG_CALLBACK statusrtn;
MSG_CALLBACK confirmrtn;
char unload_type;
char verbose;
a_bit_field unordered : 1;
a_bit_field no_confirm : 1;
a_bit_field use_internal_unload : 1;
a_bit_field dbo_avail : 1;
a_bit_field extract : 1;
a_bit_field table_list_provided : 1;
a_bit_field exclude_tables : 1;
a_bit_field more_flag_bits_present : 1;
a_sysinfo sysinfo;
const char * remote_dir;
const char * dbo_username;
const char * subscriber_username;
const char * publisher_address_type;
const char * publisher_address;
unsigned short isolation_level;
a_bit_field start_subscriptions : 1;
a_bit_field exclude_foreign_keys : 1;
a_bit_field exclude_procedures : 1;
a_bit_field exclude_triggers : 1;
a_bit_field exclude_views : 1;
a_bit_field isolation_set : 1;
a_bit_field include_where_subscribe : 1;
a_bit_field debug : 1;
p_name table_list;
a_bit_short escape_char_present : 1;
a_bit_short view_iterations_present : 1;
unsigned short view_iterations;
char escape_char;
char _fd_ * reload_connectparms;
char _fd_ * reload_db_filename;
a_bit_field output_connections:1;
char unload_interrupted;
a_bit_field replace_db:1;
const char _fd_ * locale;
const char _fd_ * site_name;
const char _fd_ * template_name;
a_bit_field preserve_ids:1;
a_bit_field exclude_hooks:1;
char _fd_ * reload_db_logname;
const char _fd_ * encryption_key;
const char _fd_ * encryption_algorithm;
a_bit_field syntax_version_7:1;
a_bit_field remove_java:1;
} an_unload_db;
The parameters correspond to features accessible from the dbunload and dbxtract, and mlxtract command-line utilities.
See the dbtools.h header file for additional comments.
For more information on callback functions, see Using callback functions.