my_bool = bool
Pmy_bool = ptr my_bool
PVIO = pointer
Pgptr = ptr gptr
gptr = cstring
Pmy_socket = ptr my_socket
my_socket = cint
PPByte = pointer
cuint = cint
Enum_server_command = enum COM_SLEEP, COM_QUIT, COM_INIT_DB, COM_QUERY, COM_FIELD_LIST, COM_CREATE_DB, COM_DROP_DB, COM_REFRESH, COM_SHUTDOWN, COM_STATISTICS, COM_PROCESS_INFO, COM_CONNECT, COM_PROCESS_KILL, COM_DEBUG, COM_PING, COM_TIME, COM_DELAYED_INSERT, COM_CHANGE_USER, COM_BINLOG_DUMP, COM_TABLE_DUMP, COM_CONNECT_OUT, COM_REGISTER_SLAVE, COM_STMT_PREPARE, COM_STMT_EXECUTE, COM_STMT_SEND_LONG_DATA, COM_STMT_CLOSE, COM_STMT_RESET, COM_SET_OPTION, COM_STMT_FETCH, COM_END
Pst_net = ptr St_net
St_net = object vio*: PVIO buff*: cstring buff_end*: cstring write_pos*: cstring read_pos*: cstring fd*: my_socket max_packet*: int max_packet_size*: int pkt_nr*: cuint compress_pkt_nr*: cuint write_timeout*: cuint read_timeout*: cuint retry_count*: cuint fcntl*: cint compress*: my_bool remain_in_buf*: int len*: int buf_length*: int where_b*: int return_status*: ptr cint reading_or_writing*: char save_char*: cchar no_send_ok*: my_bool no_send_eof*: my_bool no_send_error*: my_bool last_error*: array[0 .. 200 - 1, char] sqlstate*: array[0 .. 6 - 1, char] last_errno*: cuint error*: char query_cache_query*: gptr report_error*: my_bool return_errno*: my_bool
NET = St_net
PNET = ptr NET
Enum_field_types = enum TYPE_DECIMAL, TYPE_TINY, TYPE_SHORT, TYPE_LONG, TYPE_FLOAT, TYPE_DOUBLE, TYPE_NULL, TYPE_TIMESTAMP, TYPE_LONGLONG, TYPE_INT24, TYPE_DATE, TYPE_TIME, TYPE_DATETIME, TYPE_YEAR, TYPE_NEWDATE, TYPE_VARCHAR, TYPE_BIT, TYPE_NEWDECIMAL = 246, TYPE_ENUM = 247, TYPE_SET = 248, TYPE_TINY_BLOB = 249, TYPE_MEDIUM_BLOB = 250, TYPE_LONG_BLOB = 251, TYPE_BLOB = 252, TYPE_VAR_STRING = 253, TYPE_STRING = 254, TYPE_GEOMETRY = 255
Enum_shutdown_level = enum SHUTDOWN_DEFAULT = 0, SHUTDOWN_WAIT_CONNECTIONS = 1, SHUTDOWN_WAIT_TRANSACTIONS = 2, SHUTDOWN_WAIT_UPDATES = 8, SHUTDOWN_WAIT_ALL_BUFFERS = 16, SHUTDOWN_WAIT_CRITICAL_BUFFERS = 17, KILL_QUERY = 254, KILL_CONNECTION = 255
Enum_cursor_type = enum CURSOR_TYPE_NO_CURSOR = 0, CURSOR_TYPE_READ_ONLY = 1, CURSOR_TYPE_FOR_UPDATE = 2, CURSOR_TYPE_SCROLLABLE = 4
Enum_mysql_set_option = enum OPTION_MULTI_STATEMENTS_ON, OPTION_MULTI_STATEMENTS_OFF
Psockaddr = ptr Sockaddr
Sockaddr = object
Prand_struct = ptr Rand_struct
Rand_struct = object seed1*: int seed2*: int max_value*: int max_value_dbl*: cdouble
Item_result = enum STRING_RESULT, REAL_RESULT, INT_RESULT, ROW_RESULT, DECIMAL_RESULT
PItem_result = ptr Item_result
Pst_udf_args = ptr St_udf_args
St_udf_args = object arg_count*: cuint arg_type*: PItem_result args*: cstringArray lengths*: ptr int maybe_null*: cstring attributes*: cstringArray attribute_lengths*: ptr int
UDF_ARGS = St_udf_args
PUDF_ARGS = ptr UDF_ARGS
Pst_udf_init = ptr St_udf_init
St_udf_init = object maybe_null*: my_bool decimals*: cuint max_length*: int theptr*: cstring const_item*: my_bool
UDF_INIT = St_udf_init
PUDF_INIT = ptr UDF_INIT
Pst_mysql_field = ptr St_mysql_field
St_mysql_field = object name*: cstring org_name*: cstring table*: cstring org_table*: cstring db*: cstring catalog*: cstring def*: cstring len*: int max_length*: int name_length*: cuint org_name_length*: cuint table_length*: cuint org_table_length*: cuint db_length*: cuint catalog_length*: cuint def_length*: cuint flags*: cuint decimals*: cuint charsetnr*: cuint ftype*: Enum_field_types extension*: pointer
FIELD = St_mysql_field
PFIELD = ptr FIELD
PROW = ptr ROW
ROW = cstringArray
PFIELD_OFFSET = ptr FIELD_OFFSET
FIELD_OFFSET = cuint
my_ulonglong = int64
Pmy_ulonglong = ptr my_ulonglong
Pst_mysql_rows = ptr St_mysql_rows
St_mysql_rows = object next*: Pst_mysql_rows data*: ROW len*: int
ROWS = St_mysql_rows
PROWS = ptr ROWS
PROW_OFFSET = ptr ROW_OFFSET
ROW_OFFSET = ROWS
Pst_used_mem = ptr St_used_mem
St_used_mem = object next*: Pst_used_mem left*: cuint size*: cuint
USED_MEM = St_used_mem
PUSED_MEM = ptr USED_MEM
Pst_mem_root = ptr St_mem_root
St_mem_root = object free*: PUSED_MEM used*: PUSED_MEM pre_alloc*: PUSED_MEM min_malloc*: cuint block_size*: cuint block_num*: cuint first_block_usage*: cuint error_handler*: proc () {.cdecl.}
MEM_ROOT = St_mem_root
PMEM_ROOT = ptr MEM_ROOT
Pst_mysql_data = ptr St_mysql_data
St_mysql_data = object rows*: my_ulonglong fields*: cuint data*: PROWS alloc*: MEM_ROOT prev_ptr*: ptr PROWS
DATA = St_mysql_data
PDATA = ptr DATA
Option = enum OPT_CONNECT_TIMEOUT, OPT_COMPRESS, OPT_NAMED_PIPE, INIT_COMMAND, READ_DEFAULT_FILE, READ_DEFAULT_GROUP, SET_CHARSET_DIR, SET_CHARSET_NAME, OPT_LOCAL_INFILE, OPT_PROTOCOL, SHARED_MEMORY_BASE_NAME, OPT_READ_TIMEOUT, OPT_WRITE_TIMEOUT, OPT_USE_RESULT, OPT_USE_REMOTE_CONNECTION, OPT_USE_EMBEDDED_CONNECTION, OPT_GUESS_CONNECTION, SET_CLIENT_IP, SECURE_AUTH, REPORT_DATA_TRUNCATION, OPT_RECONNECT
St_dynamic_array = object buffer*: cstring elements*: cuint max_element*: cuint alloc_increment*: cuint size_of_element*: cuint
DYNAMIC_ARRAY = St_dynamic_array
Pst_dynamic_array = ptr St_dynamic_array
Pst_mysql_options = ptr St_mysql_options
St_mysql_options = object connect_timeout*: cuint read_timeout*: cuint write_timeout*: cuint port*: cuint protocol*: cuint client_flag*: int host*: cstring user*: cstring password*: cstring unix_socket*: cstring db*: cstring init_commands*: Pst_dynamic_array my_cnf_file*: cstring my_cnf_group*: cstring charset_dir*: cstring charset_name*: cstring ssl_key*: cstring ssl_cert*: cstring ssl_ca*: cstring ssl_capath*: cstring ssl_cipher*: cstring shared_memory_base_name*: cstring max_allowed_packet*: int use_ssl*: my_bool compress*: my_bool named_pipe*: my_bool rpl_probe*: my_bool rpl_parse*: my_bool no_master_reads*: my_bool separate_thread*: my_bool methods_to_use*: Option client_ip*: cstring secure_auth*: my_bool report_data_truncation*: my_bool local_infile_init*: proc (para1: var pointer; para2: cstring; para3: pointer): cint {. cdecl.} local_infile_read*: proc (para1: pointer; para2: cstring; para3: cuint): cint local_infile_end*: proc (para1: pointer) local_infile_error*: proc (para1: pointer; para2: cstring; para3: cuint): cint local_infile_userdata*: pointer
Status = enum STATUS_READY, STATUS_GET_RESULT, STATUS_USE_RESULT
Protocol_type = enum PROTOCOL_DEFAULT, PROTOCOL_TCP, PROTOCOL_SOCKET, PROTOCOL_PIPE, PROTOCOL_MEMORY
Rpl_type = enum RPL_MASTER, RPL_SLAVE, RPL_ADMIN
Charset_info_st = object number*: cuint primary_number*: cuint binary_number*: cuint state*: cuint csname*: cstring name*: cstring comment*: cstring tailoring*: cstring ftype*: cstring to_lower*: cstring to_upper*: cstring sort_order*: cstring contractions*: ptr int16 sort_order_big*: ptr ptr int16 tab_to_uni*: ptr int16 tab_from_uni*: pointer state_map*: cstring ident_map*: cstring strxfrm_multiply*: cuint mbminlen*: cuint mbmaxlen*: cuint min_sort_char*: int16 max_sort_char*: int16 escape_with_backslash_is_dangerous*: my_bool cset*: pointer coll*: pointer
CHARSET_INFO = Charset_info_st
Pcharset_info_st = ptr Charset_info_st
Pcharacter_set = ptr Character_set
Character_set = object number*: cuint state*: cuint csname*: cstring name*: cstring comment*: cstring dir*: cstring mbminlen*: cuint mbmaxlen*: cuint
MY_CHARSET_INFO = Character_set
PMY_CHARSET_INFO = ptr MY_CHARSET_INFO
Pst_mysql_methods = ptr St_mysql_methods
Pst_mysql = ptr St_mysql
St_mysql = object net*: NET connector_fd*: gptr host*: cstring user*: cstring passwd*: cstring unix_socket*: cstring server_version*: cstring host_info*: cstring info*: cstring db*: cstring charset*: Pcharset_info_st fields*: PFIELD field_alloc*: MEM_ROOT affected_rows*: my_ulonglong insert_id*: my_ulonglong extra_info*: my_ulonglong thread_id*: int packet_length*: int port*: cuint client_flag*: int server_capabilities*: int protocol_version*: cuint field_count*: cuint server_status*: cuint server_language*: cuint warning_count*: cuint options*: St_mysql_options status*: Status free_me*: my_bool reconnect*: my_bool scramble*: array[0 .. 21 - 1, char] rpl_pivot*: my_bool master*: Pst_mysql next_slave*: Pst_mysql last_used_slave*: Pst_mysql last_used_con*: Pst_mysql stmts*: pointer methods*: Pst_mysql_methods thd*: pointer unbuffered_fetch_owner*: Pmy_bool
MySQL = St_mysql
PMySQL = ptr MySQL
Pst_mysql_res = ptr St_mysql_res
St_mysql_res = object row_count*: my_ulonglong fields*: PFIELD data*: PDATA data_cursor*: PROWS lengths*: ptr int handle*: PMySQL field_alloc*: MEM_ROOT field_count*: cuint current_field*: cuint row*: ROW current_row*: ROW eof*: my_bool unbuffered_fetch_cancelled*: my_bool methods*: Pst_mysql_methods
RES = St_mysql_res
PRES = ptr RES
Pst_mysql_stmt = ptr St_mysql_stmt
PSTMT = ptr STMT
St_mysql_methods = object read_query_result*: proc (MySQL: PMySQL): my_bool {.cdecl.} advanced_command*: proc (MySQL: PMySQL; command: Enum_server_command; header: cstring; header_length: int; arg: cstring; arg_length: int; skip_check: my_bool): my_bool read_rows*: proc (MySQL: PMySQL; fields: PFIELD; fields_count: cuint): PDATA use_result*: proc (MySQL: PMySQL): PRES fetch_lengths*: proc (fto: ptr int; column: ROW; field_count: cuint) flush_use_result*: proc (MySQL: PMySQL) list_fields*: proc (MySQL: PMySQL): PFIELD read_prepare_result*: proc (MySQL: PMySQL; stmt: PSTMT): my_bool stmt_execute*: proc (stmt: PSTMT): cint read_binary_rows*: proc (stmt: PSTMT): cint unbuffered_fetch*: proc (MySQL: PMySQL; row: cstringArray): cint free_embedded_thd*: proc (MySQL: PMySQL) read_statistics*: proc (MySQL: PMySQL): cstring next_result*: proc (MySQL: PMySQL): my_bool read_change_user_result*: proc (MySQL: PMySQL; buff: cstring; passwd: cstring): cint read_rowsfrom_cursor*: proc (stmt: PSTMT): cint
METHODS = St_mysql_methods
PMETHODS = ptr METHODS
Pst_mysql_manager = ptr St_mysql_manager
St_mysql_manager = object net*: NET host*: cstring user*: cstring passwd*: cstring port*: cuint free_me*: my_bool eof*: my_bool cmd_status*: cint last_errno*: cint net_buf*: cstring net_buf_pos*: cstring net_data_end*: cstring net_buf_size*: cint last_error*: array[0 .. 256 - 1, char]
MANAGER = St_mysql_manager
PMANAGER = ptr MANAGER
Pst_mysql_parameters = ptr St_mysql_parameters
St_mysql_parameters = object p_max_allowed_packet*: ptr int p_net_buffer_length*: ptr int
PARAMETERS = St_mysql_parameters
PPARAMETERS = ptr PARAMETERS
Enum_mysql_stmt_state = enum STMT_INIT_DONE = 1, STMT_PREPARE_DONE, STMT_EXECUTE_DONE, STMT_FETCH_DONE
Pst_mysql_bind = ptr St_mysql_bind
St_mysql_bind = object len*: int is_null*: Pmy_bool buffer*: pointer error*: Pmy_bool buffer_type*: Enum_field_types buffer_length*: int row_ptr*: ptr byte offset*: int length_value*: int param_number*: cuint pack_length*: cuint error_value*: my_bool is_unsigned*: my_bool long_data_used*: my_bool is_null_value*: my_bool store_param_func*: proc (net: PNET; param: Pst_mysql_bind) {.cdecl.} fetch_result*: proc (para1: Pst_mysql_bind; para2: PFIELD; row: PPByte) skip_result*: proc (para1: Pst_mysql_bind; para2: PFIELD; row: PPByte)
BIND = St_mysql_bind
PBIND = ptr BIND
St_mysql_stmt = object mem_root*: MEM_ROOT mysql*: PMySQL params*: PBIND `bind`*: PBIND fields*: PFIELD result*: DATA data_cursor*: PROWS affected_rows*: my_ulonglong insert_id*: my_ulonglong read_row_func*: proc (stmt: Pst_mysql_stmt; row: PPByte): cint {.cdecl.} stmt_id*: int flags*: int prefetch_rows*: int server_status*: cuint last_errno*: cuint param_count*: cuint field_count*: cuint state*: Enum_mysql_stmt_state last_error*: array[0 .. 200 - 1, char] sqlstate*: array[0 .. 6 - 1, char] send_types_to_server*: my_bool bind_param_done*: my_bool bind_result_done*: char unbuffered_fetch_cancelled*: my_bool update_max_length*: my_bool
STMT = St_mysql_stmt
Enum_stmt_attr_type = enum STMT_ATTR_UPDATE_MAX_LENGTH, STMT_ATTR_CURSOR_TYPE, STMT_ATTR_PREFETCH_ROWS
NAME_LEN = 64
HOSTNAME_LENGTH = 60
USERNAME_LENGTH = 16
SERVER_VERSION_LENGTH = 60
SQLSTATE_LENGTH = 5
LOCAL_HOST = "localhost"
LOCAL_HOST_NAMEDPIPE = '.'
NAMEDPIPE = "MySQL"
SERVICENAME = "MySQL"
SCRAMBLE_LENGTH = 20
SCRAMBLE_LENGTH_323 = 8
SCRAMBLED_PASSWORD_CHAR_LENGTH = 41
SCRAMBLED_PASSWORD_CHAR_LENGTH_323 = 16
NOT_NULL_FLAG = 1
PRI_KEY_FLAG = 2
UNIQUE_KEY_FLAG = 4
MULTIPLE_KEY_FLAG = 8
BLOB_FLAG = 16
UNSIGNED_FLAG = 32
ZEROFILL_FLAG = 64
BINARY_FLAG = 128
ENUM_FLAG = 256
AUTO_INCREMENT_FLAG = 512
TIMESTAMP_FLAG = 1024
SET_FLAG = 2048
NO_DEFAULT_VALUE_FLAG = 4096
NUM_FLAG = 32768
PART_KEY_FLAG = 16384
GROUP_FLAG = 32768
UNIQUE_FLAG = 65536
BINCMP_FLAG = 131072
REFRESH_GRANT = 1
REFRESH_LOG = 2
REFRESH_TABLES = 4
REFRESH_HOSTS = 8
REFRESH_STATUS = 16
REFRESH_THREADS = 32
REFRESH_SLAVE = 64
REFRESH_MASTER = 128
REFRESH_READ_LOCK = 16384
REFRESH_FAST = 32768
REFRESH_QUERY_CACHE = 65536
REFRESH_QUERY_CACHE_FREE = 0x00020000
REFRESH_DES_KEY_FILE = 0x00040000
REFRESH_USER_RESOURCES = 0x00080000
CLIENT_LONG_PASSWORD = 1
CLIENT_FOUND_ROWS = 2
CLIENT_LONG_FLAG = 4
CLIENT_CONNECT_WITH_DB = 8
CLIENT_NO_SCHEMA = 16
CLIENT_COMPRESS = 32
CLIENT_ODBC = 64
CLIENT_LOCAL_FILES = 128
CLIENT_IGNORE_SPACE = 256
CLIENT_PROTOCOL_41 = 512
CLIENT_INTERACTIVE = 1024
CLIENT_SSL = 2048
CLIENT_IGNORE_SIGPIPE = 4096
CLIENT_TRANSACTIONS = 8192
CLIENT_RESERVED = 16384
CLIENT_SECURE_CONNECTION = 32768
CLIENT_MULTI_STATEMENTS = 65536
CLIENT_MULTI_RESULTS = 131072
CLIENT_REMEMBER_OPTIONS: int = 2147483648
SERVER_STATUS_IN_TRANS = 1
SERVER_STATUS_AUTOCOMMIT = 2
SERVER_STATUS_MORE_RESULTS = 4
SERVER_MORE_RESULTS_EXISTS = 8
SERVER_QUERY_NO_GOOD_INDEX_USED = 16
SERVER_QUERY_NO_INDEX_USED = 32
SERVER_STATUS_CURSOR_EXISTS = 64
SERVER_STATUS_LAST_ROW_SENT = 128
SERVER_STATUS_DB_DROPPED = 256
SERVER_STATUS_NO_BACKSLASH_ESCAPES = 512
ERRMSG_SIZE = 200
NET_READ_TIMEOUT = 30
NET_WRITE_TIMEOUT = 60
NET_WAIT_TIMEOUT = 28800
ONLY_KILL_QUERY = 1
MAX_TINYINT_WIDTH = 3
MAX_SMALLINT_WIDTH = 5
MAX_MEDIUMINT_WIDTH = 8
MAX_INT_WIDTH = 10
MAX_BIGINT_WIDTH = 20
MAX_CHAR_WIDTH = 255
MAX_BLOB_WIDTH = 8192
packet_error = -1
CLIENT_MULTI_QUERIES = 65536
FIELD_TYPE_DECIMAL = TYPE_DECIMAL
FIELD_TYPE_NEWDECIMAL = TYPE_NEWDECIMAL
FIELD_TYPE_TINY = TYPE_TINY
FIELD_TYPE_SHORT = TYPE_SHORT
FIELD_TYPE_LONG = TYPE_LONG
FIELD_TYPE_FLOAT = TYPE_FLOAT
FIELD_TYPE_DOUBLE = TYPE_DOUBLE
FIELD_TYPE_NULL = TYPE_NULL
FIELD_TYPE_TIMESTAMP = TYPE_TIMESTAMP
FIELD_TYPE_LONGLONG = TYPE_LONGLONG
FIELD_TYPE_INT24 = TYPE_INT24
FIELD_TYPE_DATE = TYPE_DATE
FIELD_TYPE_TIME = TYPE_TIME
FIELD_TYPE_DATETIME = TYPE_DATETIME
FIELD_TYPE_YEAR = TYPE_YEAR
FIELD_TYPE_NEWDATE = TYPE_NEWDATE
FIELD_TYPE_ENUM = TYPE_ENUM
FIELD_TYPE_SET = TYPE_SET
FIELD_TYPE_TINY_BLOB = TYPE_TINY_BLOB
FIELD_TYPE_MEDIUM_BLOB = TYPE_MEDIUM_BLOB
FIELD_TYPE_LONG_BLOB = TYPE_LONG_BLOB
FIELD_TYPE_BLOB = TYPE_BLOB
FIELD_TYPE_VAR_STRING = TYPE_VAR_STRING
FIELD_TYPE_STRING = TYPE_STRING
FIELD_TYPE_CHAR = TYPE_TINY
FIELD_TYPE_INTERVAL = TYPE_ENUM
FIELD_TYPE_GEOMETRY = TYPE_GEOMETRY
FIELD_TYPE_BIT = TYPE_BIT
SHUTDOWN_KILLABLE_CONNECT = '\x01'
SHUTDOWN_KILLABLE_TRANS = '\x02'
SHUTDOWN_KILLABLE_LOCK_TABLE = '\x04'
SHUTDOWN_KILLABLE_UPDATE = '\x08'
NET_HEADER_SIZE = 4
COMP_HEADER_SIZE = 3
NULL_LENGTH: int = -1
STMT_HEADER = 4
LONG_DATA_HEADER = 6
CLIENT_NET_READ_TIMEOUT = 31536000
CLIENT_NET_WRITE_TIMEOUT = 31536000
COUNT_ERROR = -1
ALLOC_MAX_BLOCK_TO_DROP = 4096
ALLOC_MAX_BLOCK_USAGE_BEFORE_DROP = 10
MAX_MYSQL_MANAGER_ERR = 256
MAX_MYSQL_MANAGER_MSG = 256
MANAGER_OK = 200
MANAGER_INFO = 250
MANAGER_ACCESS = 401
MANAGER_CLIENT_ERR = 450
MANAGER_INTERNAL_ERR = 500
LOCAL_INFILE_ERROR_LEN = 512
NO_DATA = 100
DATA_TRUNCATED = 101
proc my_net_init(net: PNET; vio: PVIO): my_bool {.cdecl, dynlib: lib, importc: "my_net_init".}
proc my_net_local_init(net: PNET) {.cdecl, dynlib: lib, importc: "my_net_local_init".}
proc net_end(net: PNET) {.cdecl, dynlib: lib, importc: "net_end".}
proc net_clear(net: PNET) {.cdecl, dynlib: lib, importc: "net_clear".}
proc net_realloc(net: PNET; len: int): my_bool {.cdecl, dynlib: lib, importc: "net_realloc".}
proc net_flush(net: PNET): my_bool {.cdecl, dynlib: lib, importc: "net_flush".}
proc my_net_write(net: PNET; packet: cstring; length: int): my_bool {.cdecl, dynlib: lib, importc: "my_net_write".}
proc net_write_command(net: PNET; command: char; header: cstring; head_len: int; packet: cstring; length: int): my_bool {.cdecl, dynlib: lib, importc: "net_write_command".}
proc net_real_write(net: PNET; packet: cstring; length: int): cint {.cdecl, dynlib: lib, importc: "net_real_write".}
proc my_net_read(net: PNET): int {.cdecl, dynlib: lib, importc: "my_net_read".}
proc my_connect(s: my_socket; name: Psockaddr; namelen: cuint; timeout: cuint): cint {. cdecl, dynlib: lib, importc: "my_connect".}
proc randominit(para1: Prand_struct; seed1: int; seed2: int) {.cdecl, dynlib: lib, importc: "randominit".}
proc my_rnd(para1: Prand_struct): cdouble {.cdecl, dynlib: lib, importc: "my_rnd".}
proc create_random_string(fto: cstring; len: cuint; rand_st: Prand_struct) {.cdecl, dynlib: lib, importc: "create_random_string".}
proc hash_password(fto: int; password: cstring; password_len: cuint) {.cdecl, dynlib: lib, importc: "hash_password".}
proc make_scrambled_password_323(fto: cstring; password: cstring) {.cdecl, dynlib: lib, importc: "make_scrambled_password_323".}
proc scramble_323(fto: cstring; message: cstring; password: cstring) {.cdecl, dynlib: lib, importc: "scramble_323".}
proc check_scramble_323(para1: cstring; message: cstring; salt: int): my_bool {.cdecl, dynlib: lib, importc: "check_scramble_323".}
proc get_salt_from_password_323(res: ptr int; password: cstring) {.cdecl, dynlib: lib, importc: "get_salt_from_password_323".}
proc make_password_from_salt_323(fto: cstring; salt: ptr int) {.cdecl, dynlib: lib, importc: "make_password_from_salt_323".}
proc octet2hex(fto: cstring; str: cstring; length: cuint): cstring {.cdecl, dynlib: lib, importc: "octet2hex".}
proc make_scrambled_password(fto: cstring; password: cstring) {.cdecl, dynlib: lib, importc: "make_scrambled_password".}
proc scramble(fto: cstring; message: cstring; password: cstring) {.cdecl, dynlib: lib, importc: "scramble".}
proc check_scramble(reply: cstring; message: cstring; hash_stage2: pointer): my_bool {. cdecl, dynlib: lib, importc: "check_scramble".}
proc get_salt_from_password(res: pointer; password: cstring) {.cdecl, dynlib: lib, importc: "get_salt_from_password".}
proc make_password_from_salt(fto: cstring; hash_stage2: pointer) {.cdecl, dynlib: lib, importc: "make_password_from_salt".}
proc get_tty_password(opt_message: cstring): cstring {.cdecl, dynlib: lib, importc: "get_tty_password".}
proc errno_to_sqlstate(errno: cuint): cstring {.cdecl, dynlib: lib, importc: "mysql_errno_to_sqlstate".}
proc modify_defaults_file(file_location: cstring; option: cstring; option_value: cstring; section_name: cstring; remove_option: cint): cint {.cdecl, dynlib: lib, importc: "load_defaults".}
proc load_defaults(conf_file: cstring; groups: cstringArray; argc: ptr cint; argv: ptr cstringArray): cint {.cdecl, dynlib: lib, importc: "load_defaults".}
proc my_init(): my_bool {.cdecl, dynlib: lib, importc: "my_init".}
proc my_thread_init(): my_bool {.cdecl, dynlib: lib, importc: "my_thread_init".}
proc my_thread_end() {.cdecl, dynlib: lib, importc: "my_thread_end".}
proc server_init(argc: cint; argv: cstringArray; groups: cstringArray): cint {.cdecl, dynlib: lib, importc: "mysql_server_init".}
proc server_end() {.cdecl, dynlib: lib, importc: "mysql_server_end".}
proc library_init(argc: cint; argv: cstringArray; groups: cstringArray): cint {.cdecl, dynlib: lib, importc: "mysql_server_init".}
proc library_end() {.cdecl, dynlib: lib, importc: "mysql_server_end".}
proc get_parameters(): PPARAMETERS {.stdcall, dynlib: lib, importc: "mysql_get_parameters".}
proc thread_init(): my_bool {.stdcall, dynlib: lib, importc: "mysql_thread_init".}
proc thread_end() {.stdcall, dynlib: lib, importc: "mysql_thread_end".}
proc num_rows(res: PRES): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_num_rows".}
proc num_fields(res: PRES): cuint {.stdcall, dynlib: lib, importc: "mysql_num_fields".}
proc eof(res: PRES): my_bool {.stdcall, dynlib: lib, importc: "mysql_eof".}
proc fetch_field_direct(res: PRES; fieldnr: cuint): PFIELD {.stdcall, dynlib: lib, importc: "mysql_fetch_field_direct".}
proc fetch_fields(res: PRES): PFIELD {.stdcall, dynlib: lib, importc: "mysql_fetch_fields".}
proc row_tell(res: PRES): ROW_OFFSET {.stdcall, dynlib: lib, importc: "mysql_row_tell".}
proc field_tell(res: PRES): FIELD_OFFSET {.stdcall, dynlib: lib, importc: "mysql_field_tell".}
proc field_count(MySQL: PMySQL): cuint {.stdcall, dynlib: lib, importc: "mysql_field_count".}
proc affected_rows(MySQL: PMySQL): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_affected_rows".}
proc insert_id(MySQL: PMySQL): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_insert_id".}
proc errno(MySQL: PMySQL): cuint {.stdcall, dynlib: lib, importc: "mysql_errno".}
proc error(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_error".}
proc sqlstate(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_sqlstate".}
proc warning_count(MySQL: PMySQL): cuint {.stdcall, dynlib: lib, importc: "mysql_warning_count".}
proc info(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_info".}
proc thread_id(MySQL: PMySQL): int {.stdcall, dynlib: lib, importc: "mysql_thread_id".}
proc character_set_name(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_character_set_name".}
proc set_character_set(MySQL: PMySQL; csname: cstring): int32 {.stdcall, dynlib: lib, importc: "mysql_set_character_set".}
proc init(MySQL: PMySQL): PMySQL {.stdcall, dynlib: lib, importc: "mysql_init".}
proc ssl_set(MySQL: PMySQL; key: cstring; cert: cstring; ca: cstring; capath: cstring; cipher: cstring): my_bool {.stdcall, dynlib: lib, importc: "mysql_ssl_set".}
proc change_user(MySQL: PMySQL; user: cstring; passwd: cstring; db: cstring): my_bool {. stdcall, dynlib: lib, importc: "mysql_change_user".}
proc real_connect(MySQL: PMySQL; host: cstring; user: cstring; passwd: cstring; db: cstring; port: cuint; unix_socket: cstring; clientflag: int): PMySQL {. stdcall, dynlib: lib, importc: "mysql_real_connect".}
proc select_db(MySQL: PMySQL; db: cstring): cint {.stdcall, dynlib: lib, importc: "mysql_select_db".}
proc query(MySQL: PMySQL; q: cstring): cint {.stdcall, dynlib: lib, importc: "mysql_query".}
proc send_query(MySQL: PMySQL; q: cstring; len: int): cint {.stdcall, dynlib: lib, importc: "mysql_send_query".}
proc real_query(MySQL: PMySQL; q: cstring; len: int): cint {.stdcall, dynlib: lib, importc: "mysql_real_query".}
proc store_result(MySQL: PMySQL): PRES {.stdcall, dynlib: lib, importc: "mysql_store_result".}
proc use_result(MySQL: PMySQL): PRES {.stdcall, dynlib: lib, importc: "mysql_use_result".}
proc master_query(MySQL: PMySQL; q: cstring; len: int): my_bool {.stdcall, dynlib: lib, importc: "mysql_master_query".}
proc master_send_query(MySQL: PMySQL; q: cstring; len: int): my_bool {.stdcall, dynlib: lib, importc: "mysql_master_send_query".}
proc slave_query(MySQL: PMySQL; q: cstring; len: int): my_bool {.stdcall, dynlib: lib, importc: "mysql_slave_query".}
proc slave_send_query(MySQL: PMySQL; q: cstring; len: int): my_bool {.stdcall, dynlib: lib, importc: "mysql_slave_send_query".}
proc get_character_set_info(MySQL: PMySQL; charset: PMY_CHARSET_INFO) {.stdcall, dynlib: lib, importc: "mysql_get_character_set_info".}
proc set_local_infile_default(MySQL: PMySQL) {.cdecl, dynlib: lib, importc: "mysql_set_local_infile_default".}
proc enable_rpl_parse(MySQL: PMySQL) {.stdcall, dynlib: lib, importc: "mysql_enable_rpl_parse".}
proc disable_rpl_parse(MySQL: PMySQL) {.stdcall, dynlib: lib, importc: "mysql_disable_rpl_parse".}
proc rpl_parse_enabled(MySQL: PMySQL): cint {.stdcall, dynlib: lib, importc: "mysql_rpl_parse_enabled".}
proc enable_reads_from_master(MySQL: PMySQL) {.stdcall, dynlib: lib, importc: "mysql_enable_reads_from_master".}
proc disable_reads_from_master(MySQL: PMySQL) {.stdcall, dynlib: lib, importc: "mysql_disable_reads_from_master".}
proc reads_from_master_enabled(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_reads_from_master_enabled".}
proc rpl_query_type(q: cstring; length: cint): Rpl_type {.stdcall, dynlib: lib, importc: "mysql_rpl_query_type".}
proc rpl_probe(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_rpl_probe".}
proc set_master(MySQL: PMySQL; host: cstring; port: cuint; user: cstring; passwd: cstring): cint {. stdcall, dynlib: lib, importc: "mysql_set_master".}
proc add_slave(MySQL: PMySQL; host: cstring; port: cuint; user: cstring; passwd: cstring): cint {. stdcall, dynlib: lib, importc: "mysql_add_slave".}
proc shutdown(MySQL: PMySQL; shutdown_level: Enum_shutdown_level): cint {.stdcall, dynlib: lib, importc: "mysql_shutdown".}
proc dump_debug_info(MySQL: PMySQL): cint {.stdcall, dynlib: lib, importc: "mysql_dump_debug_info".}
proc refresh(sql: PMySQL; refresh_options: cuint): cint {.stdcall, dynlib: lib, importc: "mysql_refresh".}
proc kill(MySQL: PMySQL; pid: int): cint {.stdcall, dynlib: lib, importc: "mysql_kill".}
proc set_server_option(MySQL: PMySQL; option: Enum_mysql_set_option): cint {.stdcall, dynlib: lib, importc: "mysql_set_server_option".}
proc ping(MySQL: PMySQL): cint {.stdcall, dynlib: lib, importc: "mysql_ping".}
proc stat(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_stat".}
proc get_server_info(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_get_server_info".}
proc get_client_info(): cstring {.stdcall, dynlib: lib, importc: "mysql_get_client_info".}
proc get_client_version(): int {.stdcall, dynlib: lib, importc: "mysql_get_client_version".}
proc get_host_info(MySQL: PMySQL): cstring {.stdcall, dynlib: lib, importc: "mysql_get_host_info".}
proc get_server_version(MySQL: PMySQL): int {.stdcall, dynlib: lib, importc: "mysql_get_server_version".}
proc get_proto_info(MySQL: PMySQL): cuint {.stdcall, dynlib: lib, importc: "mysql_get_proto_info".}
proc list_dbs(MySQL: PMySQL; wild: cstring): PRES {.stdcall, dynlib: lib, importc: "mysql_list_dbs".}
proc list_tables(MySQL: PMySQL; wild: cstring): PRES {.stdcall, dynlib: lib, importc: "mysql_list_tables".}
proc list_processes(MySQL: PMySQL): PRES {.stdcall, dynlib: lib, importc: "mysql_list_processes".}
proc options(MySQL: PMySQL; option: Option; arg: cstring): cint {.stdcall, dynlib: lib, importc: "mysql_options".}
proc free_result(result: PRES) {.stdcall, dynlib: lib, importc: "mysql_free_result".}
proc data_seek(result: PRES; offset: my_ulonglong) {.stdcall, dynlib: lib, importc: "mysql_data_seek".}
proc row_seek(result: PRES; offset: ROW_OFFSET): ROW_OFFSET {.stdcall, dynlib: lib, importc: "mysql_row_seek".}
proc field_seek(result: PRES; offset: FIELD_OFFSET): FIELD_OFFSET {.stdcall, dynlib: lib, importc: "mysql_field_seek".}
proc fetch_row(result: PRES): ROW {.stdcall, dynlib: lib, importc: "mysql_fetch_row".}
proc fetch_lengths(result: PRES): ptr int {.stdcall, dynlib: lib, importc: "mysql_fetch_lengths".}
proc fetch_field(result: PRES): PFIELD {.stdcall, dynlib: lib, importc: "mysql_fetch_field".}
proc list_fields(MySQL: PMySQL; table: cstring; wild: cstring): PRES {.stdcall, dynlib: lib, importc: "mysql_list_fields".}
proc escape_string(fto: cstring; `from`: cstring; from_length: int): int {.stdcall, dynlib: lib, importc: "mysql_escape_string".}
proc hex_string(fto: cstring; `from`: cstring; from_length: int): int {.stdcall, dynlib: lib, importc: "mysql_hex_string".}
proc real_escape_string(MySQL: PMySQL; fto: cstring; `from`: cstring; len: int): int {. stdcall, dynlib: lib, importc: "mysql_real_escape_string".}
proc debug(debug: cstring) {.stdcall, dynlib: lib, importc: "mysql_debug".}
proc myodbc_remove_escape(MySQL: PMySQL; name: cstring) {.stdcall, dynlib: lib, importc: "myodbc_remove_escape".}
proc thread_safe(): cuint {.stdcall, dynlib: lib, importc: "mysql_thread_safe".}
proc embedded(): my_bool {.stdcall, dynlib: lib, importc: "mysql_embedded".}
proc manager_init(con: PMANAGER): PMANAGER {.stdcall, dynlib: lib, importc: "mysql_manager_init".}
proc manager_connect(con: PMANAGER; host: cstring; user: cstring; passwd: cstring; port: cuint): PMANAGER {.stdcall, dynlib: lib, importc: "mysql_manager_connect".}
proc manager_close(con: PMANAGER) {.stdcall, dynlib: lib, importc: "mysql_manager_close".}
proc manager_command(con: PMANAGER; cmd: cstring; cmd_len: cint): cint {.stdcall, dynlib: lib, importc: "mysql_manager_command".}
proc manager_fetch_line(con: PMANAGER; res_buf: cstring; res_buf_size: cint): cint {. stdcall, dynlib: lib, importc: "mysql_manager_fetch_line".}
proc read_query_result(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_read_query_result".}
proc stmt_init(MySQL: PMySQL): PSTMT {.stdcall, dynlib: lib, importc: "mysql_stmt_init".}
proc stmt_prepare(stmt: PSTMT; query: cstring; len: int): cint {.stdcall, dynlib: lib, importc: "mysql_stmt_prepare".}
proc stmt_execute(stmt: PSTMT): cint {.stdcall, dynlib: lib, importc: "mysql_stmt_execute".}
proc stmt_fetch(stmt: PSTMT): cint {.stdcall, dynlib: lib, importc: "mysql_stmt_fetch".}
proc stmt_fetch_column(stmt: PSTMT; `bind`: PBIND; column: cuint; offset: int): cint {. stdcall, dynlib: lib, importc: "mysql_stmt_fetch_column".}
proc stmt_store_result(stmt: PSTMT): cint {.stdcall, dynlib: lib, importc: "mysql_stmt_store_result".}
proc stmt_param_count(stmt: PSTMT): int {.stdcall, dynlib: lib, importc: "mysql_stmt_param_count".}
proc stmt_attr_set(stmt: PSTMT; attr_type: Enum_stmt_attr_type; attr: pointer): my_bool {. stdcall, dynlib: lib, importc: "mysql_stmt_attr_set".}
proc stmt_attr_get(stmt: PSTMT; attr_type: Enum_stmt_attr_type; attr: pointer): my_bool {. stdcall, dynlib: lib, importc: "mysql_stmt_attr_get".}
proc stmt_bind_param(stmt: PSTMT; bnd: PBIND): my_bool {.stdcall, dynlib: lib, importc: "mysql_stmt_bind_param".}
proc stmt_bind_result(stmt: PSTMT; bnd: PBIND): my_bool {.stdcall, dynlib: lib, importc: "mysql_stmt_bind_result".}
proc stmt_close(stmt: PSTMT): my_bool {.stdcall, dynlib: lib, importc: "mysql_stmt_close".}
proc stmt_reset(stmt: PSTMT): my_bool {.stdcall, dynlib: lib, importc: "mysql_stmt_reset".}
proc stmt_free_result(stmt: PSTMT): my_bool {.stdcall, dynlib: lib, importc: "mysql_stmt_free_result".}
proc stmt_send_long_data(stmt: PSTMT; param_number: cuint; data: cstring; len: int): my_bool {. stdcall, dynlib: lib, importc: "mysql_stmt_send_long_data".}
proc stmt_result_metadata(stmt: PSTMT): PRES {.stdcall, dynlib: lib, importc: "mysql_stmt_result_metadata".}
proc stmt_param_metadata(stmt: PSTMT): PRES {.stdcall, dynlib: lib, importc: "mysql_stmt_param_metadata".}
proc stmt_errno(stmt: PSTMT): cuint {.stdcall, dynlib: lib, importc: "mysql_stmt_errno".}
proc stmt_error(stmt: PSTMT): cstring {.stdcall, dynlib: lib, importc: "mysql_stmt_error".}
proc stmt_sqlstate(stmt: PSTMT): cstring {.stdcall, dynlib: lib, importc: "mysql_stmt_sqlstate".}
proc stmt_row_seek(stmt: PSTMT; offset: ROW_OFFSET): ROW_OFFSET {.stdcall, dynlib: lib, importc: "mysql_stmt_row_seek".}
proc stmt_row_tell(stmt: PSTMT): ROW_OFFSET {.stdcall, dynlib: lib, importc: "mysql_stmt_row_tell".}
proc stmt_data_seek(stmt: PSTMT; offset: my_ulonglong) {.stdcall, dynlib: lib, importc: "mysql_stmt_data_seek".}
proc stmt_num_rows(stmt: PSTMT): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_stmt_num_rows".}
proc stmt_affected_rows(stmt: PSTMT): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_stmt_affected_rows".}
proc stmt_insert_id(stmt: PSTMT): my_ulonglong {.stdcall, dynlib: lib, importc: "mysql_stmt_insert_id".}
proc stmt_field_count(stmt: PSTMT): cuint {.stdcall, dynlib: lib, importc: "mysql_stmt_field_count".}
proc commit(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_commit".}
proc rollback(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_rollback".}
proc autocommit(MySQL: PMySQL; auto_mode: my_bool): my_bool {.stdcall, dynlib: lib, importc: "mysql_autocommit".}
proc more_results(MySQL: PMySQL): my_bool {.stdcall, dynlib: lib, importc: "mysql_more_results".}
proc next_result(MySQL: PMySQL): cint {.stdcall, dynlib: lib, importc: "mysql_next_result".}
proc close(sock: PMySQL) {.stdcall, dynlib: lib, importc: "mysql_close".}
proc net_safe_read(MySQL: PMySQL): cuint {.cdecl, dynlib: lib, importc: "net_safe_read".}
proc IS_PRI_KEY(n: int32): bool {.raises: [], tags: [].}
proc IS_NOT_NULL(n: int32): bool {.raises: [], tags: [].}
proc IS_BLOB(n: int32): bool {.raises: [], tags: [].}
proc IS_NUM_FIELD(f: Pst_mysql_field): bool {.raises: [], tags: [].}
proc IS_NUM(t: Enum_field_types): bool {.raises: [], tags: [].}
proc INTERNAL_NUM_FIELD(f: Pst_mysql_field): bool {.raises: [], tags: [].}
proc reload(x: PMySQL): cint {.raises: [], tags: [].}
© 2006–2017 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/mysql.html