mysql4.pp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. {$IFNDEF FPC_DOTTEDUNITS}
  2. unit mysql4;
  3. {$ENDIF FPC_DOTTEDUNITS}
  4. interface
  5. {$IFDEF FPC_DOTTEDUNITS}
  6. uses System.CTypes,Api.My4_sys,Api.Mysql4_com,System.DynLibs;
  7. {$ELSE FPC_DOTTEDUNITS}
  8. uses ctypes,my4_sys,mysql4_com,dynlibs;
  9. {$ENDIF FPC_DOTTEDUNITS}
  10. {
  11. Automatically converted by H2Pas 0.99.15 from mysql.ph
  12. The following command line parameters were used:
  13. -p
  14. -D
  15. -l
  16. mysqlclient
  17. mysql.ph
  18. }
  19. { Copyright (C) 2000 MySQL AB
  20. This program is free software; you can redistribute it and/or modify
  21. it under the terms of the GNU General Public License as published by
  22. the Free Software Foundation; either version 2 of the License, or
  23. (at your option) any later version.
  24. This program is distributed in the hope that it will be useful,
  25. but WITHOUT ANY WARRANTY; without even the implied warranty of
  26. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  27. GNU General Public License for more details.
  28. You should have received a copy of the GNU General Public License
  29. along with this program; if not, write to the Free Software
  30. Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. }
  31. {$mode objfpc}{$H+}
  32. {$MACRO on}
  33. {$PACKRECORDS C}
  34. {$IFDEF Unix}
  35. {$DEFINE extdecl:=cdecl}
  36. const
  37. External_library = 'libmysqlclient.'+sharedsuffix;
  38. {$ENDIF}
  39. {$IFDEF Windows}
  40. {$DEFINE extdecl:=stdcall}
  41. const
  42. External_library = 'libmysql.dll';
  43. {$ENDIF}
  44. {$i mysql4types.inc}
  45. function mysql_server_init(argc:longint; argv:PPAnsiChar; groups:PPAnsiChar):longint;extdecl;external External_library name 'mysql_server_init';
  46. procedure mysql_server_end;extdecl;external External_library name 'mysql_server_end';
  47. function mysql_thread_init:my_bool;extdecl;external External_library name 'mysql_thread_init';
  48. procedure mysql_thread_end;extdecl;external External_library name 'mysql_thread_end';
  49. function mysql_num_rows(res:PMYSQL_RES):my_ulonglong;extdecl;external External_library name 'mysql_num_rows';
  50. function mysql_num_fields(res:PMYSQL_RES):dword;extdecl;external External_library name 'mysql_num_fields';
  51. function mysql_eof(res:PMYSQL_RES):my_bool;extdecl;external External_library name 'mysql_eof';
  52. function mysql_fetch_field_direct(res:PMYSQL_RES; fieldnr:dword):PMYSQL_FIELD;extdecl;external External_library name 'mysql_fetch_field_direct';
  53. function mysql_fetch_fields(res:PMYSQL_RES):PMYSQL_FIELD;extdecl;external External_library name 'mysql_fetch_fields';
  54. function mysql_row_tell(res:PMYSQL_RES):PMYSQL_ROWS;extdecl;external External_library name 'mysql_row_tell';
  55. function mysql_field_tell(res:PMYSQL_RES):dword;extdecl;external External_library name 'mysql_field_tell';
  56. function mysql_field_count(mysql:PMYSQL):dword;extdecl;external External_library name 'mysql_field_count';
  57. function mysql_affected_rows(mysql:PMYSQL):my_ulonglong;extdecl;external External_library name 'mysql_affected_rows';
  58. function mysql_insert_id(mysql:PMYSQL):my_ulonglong;extdecl;external External_library name 'mysql_insert_id';
  59. function mysql_errno(mysql:PMYSQL):dword;extdecl;external External_library name 'mysql_errno';
  60. function mysql_error(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_error';
  61. function mysql_info(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_info';
  62. function mysql_thread_id(mysql:PMYSQL):dword;extdecl;external External_library name 'mysql_thread_id';
  63. function mysql_character_set_name(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_character_set_name';
  64. function mysql_init(mysql:PMYSQL):PMYSQL;extdecl;external External_library name 'mysql_init';
  65. function mysql_ssl_set(mysql:PMYSQL; key:PAnsiChar; cert:PAnsiChar; ca:PAnsiChar; capath:PAnsiChar;
  66. cipher:PAnsiChar):longint;extdecl;external External_library name 'mysql_ssl_set';
  67. function mysql_ssl_clear(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_ssl_clear';
  68. function mysql_change_user(mysql:PMYSQL; user:PAnsiChar; passwd:PAnsiChar; db:PAnsiChar):my_bool;extdecl;external External_library name 'mysql_change_user';
  69. function mysql_real_connect(mysql:PMYSQL; host:PAnsiChar; user:PAnsiChar; passwd:PAnsiChar; db:PAnsiChar;
  70. port:dword; unix_socket:PAnsiChar; clientflag:dword):PMYSQL;extdecl;external External_library name 'mysql_real_connect';
  71. procedure mysql_close(sock:PMYSQL);extdecl;external External_library name 'mysql_close';
  72. function mysql_select_db(mysql:PMYSQL; db:PAnsiChar):longint;extdecl;external External_library name 'mysql_select_db';
  73. function mysql_query(mysql:PMYSQL; q:PAnsiChar):longint;extdecl;external External_library name 'mysql_query';
  74. function mysql_send_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_send_query';
  75. function mysql_read_query_result(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_read_query_result';
  76. function mysql_real_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_real_query';
  77. function mysql_master_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_master_query';
  78. function mysql_master_send_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_master_send_query';
  79. function mysql_slave_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_slave_query';
  80. function mysql_slave_send_query(mysql:PMYSQL; q:PAnsiChar; length:dword):longint;extdecl;external External_library name 'mysql_slave_send_query';
  81. procedure mysql_enable_rpl_parse(mysql:PMYSQL);extdecl;external External_library name 'mysql_enable_rpl_parse';
  82. procedure mysql_disable_rpl_parse(mysql:PMYSQL);extdecl;external External_library name 'mysql_disable_rpl_parse';
  83. function mysql_rpl_parse_enabled(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_rpl_parse_enabled';
  84. procedure mysql_enable_reads_from_master(mysql:PMYSQL);extdecl;external External_library name 'mysql_enable_reads_from_master';
  85. procedure mysql_disable_reads_from_master(mysql:PMYSQL);extdecl;external External_library name 'mysql_disable_reads_from_master';
  86. function mysql_reads_from_master_enabled(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_reads_from_master_enabled';
  87. (* error
  88. enum mysql_rpl_type mysql_rpl_query_type(const AnsiChar* q, int len);
  89. in declaration at line 291 *)
  90. function mysql_rpl_probe(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_rpl_probe';
  91. function mysql_set_master(mysql:PMYSQL; host:PAnsiChar; port:dword; user:PAnsiChar; passwd:PAnsiChar):longint;extdecl;external External_library name 'mysql_set_master';
  92. function mysql_add_slave(mysql:PMYSQL; host:PAnsiChar; port:dword; user:PAnsiChar; passwd:PAnsiChar):longint;extdecl;external External_library name 'mysql_add_slave';
  93. function mysql_shutdown(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_shutdown';
  94. function mysql_dump_debug_info(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_dump_debug_info';
  95. function mysql_refresh(mysql:PMYSQL; refresh_options:dword):longint;extdecl;external External_library name 'mysql_refresh';
  96. function mysql_kill(mysql:PMYSQL; pid:dword):longint;extdecl;external External_library name 'mysql_kill';
  97. function mysql_ping(mysql:PMYSQL):longint;extdecl;external External_library name 'mysql_ping';
  98. function mysql_stat(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_stat';
  99. function mysql_get_server_info(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_get_server_info';
  100. function mysql_get_client_info:PAnsiChar;extdecl;external External_library name 'mysql_get_client_info';
  101. function mysql_get_host_info(mysql:PMYSQL):PAnsiChar;extdecl;external External_library name 'mysql_get_host_info';
  102. function mysql_get_proto_info(mysql:PMYSQL):dword;extdecl;external External_library name 'mysql_get_proto_info';
  103. function mysql_list_dbs(mysql:PMYSQL; wild:PAnsiChar):PMYSQL_RES;extdecl;external External_library name 'mysql_list_dbs';
  104. function mysql_list_tables(mysql:PMYSQL; wild:PAnsiChar):PMYSQL_RES;extdecl;external External_library name 'mysql_list_tables';
  105. function mysql_list_fields(mysql:PMYSQL; table:PAnsiChar; wild:PAnsiChar):PMYSQL_RES;extdecl;external External_library name 'mysql_list_fields';
  106. function mysql_list_processes(mysql:PMYSQL):PMYSQL_RES;extdecl;external External_library name 'mysql_list_processes';
  107. function mysql_store_result(mysql:PMYSQL):PMYSQL_RES;extdecl;external External_library name 'mysql_store_result';
  108. function mysql_use_result(mysql:PMYSQL):PMYSQL_RES;extdecl;external External_library name 'mysql_use_result';
  109. function mysql_options(mysql:PMYSQL; option:mysql_option; arg:PAnsiChar):longint;extdecl;external External_library name 'mysql_options';
  110. procedure mysql_free_result(result:PMYSQL_RES);extdecl;external External_library name 'mysql_free_result';
  111. procedure mysql_data_seek(result:PMYSQL_RES; offset:my_ulonglong);extdecl;external External_library name 'mysql_data_seek';
  112. function mysql_row_seek(result:PMYSQL_RES; _para2:MYSQL_ROW_OFFSET):MYSQL_ROW_OFFSET;extdecl;external External_library name 'mysql_row_seek';
  113. function mysql_field_seek(result:PMYSQL_RES; offset:MYSQL_FIELD_OFFSET):MYSQL_FIELD_OFFSET;extdecl;external External_library name 'mysql_field_seek';
  114. function mysql_fetch_row(result:PMYSQL_RES):MYSQL_ROW;extdecl;external External_library name 'mysql_fetch_row';
  115. function mysql_fetch_lengths(result:PMYSQL_RES):Pdword;extdecl;external External_library name 'mysql_fetch_lengths';
  116. function mysql_fetch_field(result:PMYSQL_RES):PMYSQL_FIELD;extdecl;external External_library name 'mysql_fetch_field';
  117. function mysql_escape_string(_to:PAnsiChar; from:PAnsiChar; from_length:dword):dword;extdecl;external External_library name 'mysql_escape_string';
  118. function mysql_real_escape_string(mysql:PMYSQL; _to:PAnsiChar; from:PAnsiChar; length:dword):dword;extdecl;external External_library name 'mysql_real_escape_string';
  119. procedure mysql_debug(debug:PAnsiChar);extdecl;external External_library name 'mysql_debug';
  120. function mysql_odbc_escape_string(mysql:PMYSQL; _to:PAnsiChar; to_length:dword; from:PAnsiChar; from_length:dword;
  121. param:pointer; extend_buffer: TExdendBuffer):PAnsiChar;extdecl;external External_library name 'mysql_odbc_escape_string';
  122. procedure myodbc_remove_escape(mysql:PMYSQL; name:PAnsiChar);extdecl;external External_library name 'myodbc_remove_escape';
  123. function mysql_thread_safe:dword;extdecl;external External_library name 'mysql_thread_safe';
  124. function mysql_manager_init(con:PMYSQL_MANAGER):PMYSQL_MANAGER;extdecl;external External_library name 'mysql_manager_init';
  125. function mysql_manager_connect(con:PMYSQL_MANAGER; host:PAnsiChar; user:PAnsiChar; passwd:PAnsiChar; port:dword):PMYSQL_MANAGER;extdecl;external External_library name 'mysql_manager_connect';
  126. procedure mysql_manager_close(con:PMYSQL_MANAGER);extdecl;external External_library name 'mysql_manager_close';
  127. function mysql_manager_command(con:PMYSQL_MANAGER; cmd:PAnsiChar; cmd_len:longint):longint;extdecl;external External_library name 'mysql_manager_command';
  128. function mysql_manager_fetch_line(con:PMYSQL_MANAGER; res_buf:PAnsiChar; res_buf_size:longint):longint;extdecl;external External_library name 'mysql_manager_fetch_line';
  129. function simple_command(mysql:PMYSQL; command:enum_server_command; arg:PAnsiChar; length:dword; skipp_check:my_bool):longint;extdecl;external External_library name 'simple_command';
  130. function net_safe_read(mysql:PMYSQL):dword;extdecl;external External_library name 'net_safe_read';
  131. function IS_PRI_KEY(n : longint) : Boolean;
  132. function IS_NOT_NULL(n : longint) : Boolean;
  133. function IS_BLOB(n : longint) : boolean;
  134. function MYSQL_COUNT_ERROR : longint;
  135. function mysql_reload(mysql : pmysql) : longint;
  136. implementation
  137. {$i mysql4impl.inc}
  138. end.