-
Notifications
You must be signed in to change notification settings - Fork 0
/
my_sqlite.h
62 lines (48 loc) · 1.45 KB
/
my_sqlite.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#ifndef __MY_SQLITE__
#define __MY_SQLITE__
#include <sqlite3.h>
#include "my_array.h"
#include "my_assoc.h"
// ***************************************************
// typedef struct sqlite
/*!
@brief Resultset of SQLite.
*/
// ***************************************************
typedef struct
{
//! Database what we use
sqlite3 *db;
//! Array where we store all found results
a_array values;
//! Array where we store field names
a_array fields;
//! Query what we called last time
char *last_query;
//! Debug information for our callback function. This prevents
//! adding field names every time when we call callback function.
int field_names_added;
//! How many results we found
int num_items;
//! How many fields we have
int num_fields;
//! Have we connected or not
int connected;
//! Last error
char *error;
//! Do we have error message in buffer?
int error_set;
} a_sqlite;
void sqlite_connect( a_sqlite *tmp, char *database );
int sqlite_callback( void *pArg, int argc, char **argv,
char **column_names );
void sqlite_query( a_sqlite *database, char *query );
void sqlite_free( a_sqlite *database );
a_sqlite sqlite_init();
void sqlite_free_resultset( a_sqlite *database );
a_assoc sqlite_fetch_assoc( a_sqlite *db );
int sqlite_num_rows( a_sqlite *db );
int sqlite_num_fields( a_sqlite *db );
char *sqlite_fetch_field( a_sqlite *db, int field_num );
char **sqlite_fetch_row( a_sqlite *db, int row_number );
#endif