]>
Commit | Line | Data |
---|---|---|
1 | #ifndef __DBAPI_H | |
2 | #define __DBAPI_H | |
3 | ||
4 | #include "../config.h" | |
5 | ||
6 | #define DB_NULLIDENTIFIER 0 | |
7 | #define DB_CREATE 1 | |
8 | ||
9 | #ifdef DBAPI_OVERRIDE | |
10 | #undef USE_DBAPI_PGSQL | |
11 | #undef USE_DBAPI_SQLITE3 | |
12 | #endif | |
13 | ||
14 | #ifndef BUILDING_DBAPI | |
15 | ||
16 | #if defined(USE_DBAPI_PGSQL) || defined(DBAPI_OVERRIDE_PGSQL) | |
17 | ||
18 | #include "../pqsql/pqsql.h" | |
19 | ||
20 | typedef PQModuleIdentifier DBModuleIdentifier; | |
21 | typedef PGconn DBConn; | |
22 | typedef PQQueryHandler DBQueryHandler; | |
23 | typedef PQResult DBResult; | |
24 | ||
25 | #define dbconnected() pqconnected() | |
26 | #define dbgetid() pqgetid() | |
27 | #define dbfreeid(x) pqfreeid(x) | |
28 | ||
29 | #define dbattach(schema) pqcreateschema(schema) | |
30 | #define dbdetach(schema) | |
31 | #define dbescapestring(buf, src, len) PQescapeString(buf, src, len) | |
32 | #define dbloadtable(tablename, init, data, fini) pqloadtable(tablename, init, data, fini); | |
33 | ||
34 | #define dbasyncqueryf(id, handler, tag, flags, format, ...) pqasyncqueryf(id, handler, tag, flags, format , ##__VA_ARGS__) | |
35 | #define dbquerysuccessful(x) pqquerysuccessful(x) | |
36 | #define dbgetresult(conn) pqgetresult(conn) | |
37 | #define dbnumfields(x) PQnfields(x->result) | |
38 | ||
39 | #define dbfetchrow(result) pqfetchrow(result) | |
40 | #define dbgetvalue(result, column) pqgetvalue(result, column) | |
41 | ||
42 | #define dbclear(result) pqclear(result) | |
43 | ||
44 | #endif /* DBAPI_PGSQL */ | |
45 | ||
46 | #if defined(USE_DBAPI_SQLITE3) || defined(DBAPI_OVERRIDE_SQLITE3) | |
47 | ||
48 | #include "../sqlite/sqlite.h" | |
49 | ||
50 | typedef SQLiteModuleIdentifier DBModuleIdentifier; | |
51 | typedef SQLiteConn DBConn; | |
52 | typedef SQLiteQueryHandler DBQueryHandler; | |
53 | typedef SQLiteResult DBResult; | |
54 | ||
55 | #define dbconnected() sqliteconnected() | |
56 | #define dbgetid() sqlitegetid() | |
57 | #define dbfreeid(x) sqlitefreeid(x) | |
58 | ||
59 | #define dbattach(schema) sqliteattach(schema) | |
60 | #define dbdetach(schema) sqlitedetach(schema) | |
61 | #define dbescapestring(buf, src, len) sqliteescapestring(buf, (char *)(src), len) | |
62 | #define dbloadtable(tablename, init, data, fini) sqliteloadtable(tablename, init, data, fini); | |
63 | ||
64 | #define dbasyncqueryf(id, handler, tag, flags, format, ...) sqliteasyncqueryf(id, handler, tag, flags, format , ##__VA_ARGS__) | |
65 | #define dbquerysuccessful(x) sqlitequerysuccessful(x) | |
66 | #define dbgetresult(conn) sqlitegetresult(conn) | |
67 | #define dbnumfields(x) sqlite3_column_count(x->r) | |
68 | ||
69 | #define dbfetchrow(result) sqlitefetchrow(result) | |
70 | #define dbgetvalue(result, column) sqlitegetvalue(result, column) | |
71 | ||
72 | #define dbclear(result) sqliteclear(result) | |
73 | ||
74 | #endif /* DBAPI_SQLITE3 */ | |
75 | ||
76 | #endif /* BUILDING_DBAPI */ | |
77 | ||
78 | #define dbasyncqueryi(identifier, handler, tag, format, ...) dbasyncqueryf(identifier, handler, tag, 0, format , ##__VA_ARGS__) | |
79 | #define dbasyncquery(handler, tag, format, ...) dbasyncqueryf(DB_NULLIDENTIFIER, handler, tag, 0, format , ##__VA_ARGS__) | |
80 | #define dbcreatequery(format, ...) dbasyncqueryf(DB_NULLIDENTIFIER, NULL, NULL, DB_CREATE, format , ##__VA_ARGS__) | |
81 | #define dbquery(format, ...) dbasyncqueryf(DB_NULLIDENTIFIER, NULL, NULL, 0, format , ##__VA_ARGS__) | |
82 | ||
83 | #endif /* __DBAPI_H */ |