include/mysql_driver.h
/* [<][>][^][v][top][bottom][index][help] */
FUNCTIONS
This source file includes following functions.
- SQ_get_max_id
- SQ_get_min_id
1 /***************************************
2 $Revision: 1.22 $
3
4 SQL module (sq) - MySQL implementation of SQL driver.
5
6 Status: NOT REVUED, NOT TESTED
7
8 ******************/ /******************
9 Copyright (c) 1999,2000,2001,2002 RIPE NCC
10
11 All Rights Reserved
12
13 Permission to use, copy, modify, and distribute this software and its
14 documentation for any purpose and without fee is hereby granted,
15 provided that the above copyright notice appear in all copies and that
16 both that copyright notice and this permission notice appear in
17 supporting documentation, and that the name of the author not be
18 used in advertising or publicity pertaining to distribution of the
19 software without specific, written prior permission.
20
21 THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
22 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
23 AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
24 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
25 AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
26 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
27 ***************************************/
28 #ifndef READ_MYSQL_DRIVER
29 #define READ_MYSQL_DRIVER
30
31 #include "mysql.h"
32 #include "mysqld_error.h"
33 #include "erroutines.h"
34
35 /* types for mysql_info */
36 #define SQL_RECORDS 0
37 #define SQL_MATCHES 0 // for UPDATE queries (checking for duplicates)
38 #define SQL_DUPLICATES 1
39 #define SQL_WARNINGS 2
40
41
42
43 #define SQ_connection_t MYSQL
44 #define SQ_result_set_t MYSQL_RES
45
46 #define SQ_row_t MYSQL_ROW
47
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51
52
53
54 er_ret_t SQ_try_connection(SQ_connection_t **conn, const char *host,
55 unsigned int port, const char *db,
56 const char *user, const char *password);
57 SQ_connection_t *SQ_get_connection(const char *host, unsigned int port, const char *db, const char *user, const char *password);
58 int SQ_execute_query(SQ_connection_t *sql_connection,
59 const char *query, SQ_result_set_t **result_ptr);
60 int SQ_execute_query_nostore(SQ_connection_t *sql_connection,
61 const char *query, SQ_result_set_t **result_ptr);
62 int SQ_get_column_count(SQ_result_set_t *result);
63 char *SQ_get_column_label(SQ_result_set_t *result, unsigned int column);
64 unsigned int SQ_get_column_max_length(SQ_result_set_t *result, unsigned int column);
65 SQ_row_t *SQ_row_next(SQ_result_set_t *result);
66 char *SQ_get_column_string(SQ_result_set_t *result, SQ_row_t *current_row, unsigned int column);
67 char *SQ_get_column_string_nocopy(SQ_result_set_t *result,
68 SQ_row_t *current_row,
69 unsigned int column);
70 char *SQ_get_column_strings(SQ_result_set_t *result, unsigned int column);
71 int SQ_get_column_int(SQ_result_set_t *result, SQ_row_t *current_row, unsigned int column, long *resultptr);
72 char *SQ_result_to_string(SQ_result_set_t *result);
73 void SQ_free_result(SQ_result_set_t *result);
74 void SQ_close_connection(SQ_connection_t *sql_connection);
75
76 /* report number of rows */
77 int SQ_num_rows(SQ_result_set_t *result);
78 int SQ_get_table_size(SQ_connection_t *sql_connection, char *table);
79 int SQ_get_affected_rows(SQ_connection_t *sql_connection);
80 long SQ_get_insert_id(SQ_connection_t *sql_connection);
81
82
83 char *SQ_info_to_string(SQ_connection_t *sql_connection);
84 char *SQ_error(SQ_connection_t *sql_connection);
85 int SQ_errno(SQ_connection_t *sql_connection);
86 int SQ_get_info(SQ_connection_t *sql_connection, int info[3]);
87 SQ_connection_t *SQ_duplicate_connection(SQ_connection_t *orig);
88 int SQ_abort_query(SQ_connection_t *sql_connection);
89 int SQ_ping(SQ_connection_t *sql_connection);
90 char *SQ_escape_string(SQ_connection_t *sql_connection, char *str);
91
92 long sq_get_minmax_id(SQ_connection_t *sql_connection, char *id_name, char *table, int max);
93 #define SQ_get_max_id(conn, id, table) sq_get_minmax_id(conn, id, table, 1)
/* [<][>][^][v][top][bottom][index][help] */
94 #define SQ_get_min_id(conn, id, table) sq_get_minmax_id(conn, id, table, 0)
/* [<][>][^][v][top][bottom][index][help] */
95
96
97
98 #ifdef __cplusplus
99 }
100 #endif
101
102
103 #endif /* READ_MYSQL_DRIVER */