Mercurial > garten
annotate db.h @ 11:176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
author | meillo@marmaro.de |
---|---|
date | Wed, 23 Jul 2008 11:41:38 +0200 |
parents | 32c4212f05d9 |
children | 8db6497d6065 |
rev | line source |
---|---|
0 | 1 /* |
2 * data for the database connection | |
3 */ | |
4 | |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
5 #include <sqlite3.h> |
0 | 6 |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
7 char* database; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
8 char query[1024]; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
9 sqlite3* db; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
10 sqlite3_stmt* stmt; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
11 |
0 | 12 |
13 | |
14 void db_connect() { | |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
15 if (sqlite3_open(database, &db) != SQLITE_OK) { |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
16 fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db)); |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
17 sqlite3_close(db); |
0 | 18 exit(1); |
19 } | |
20 } | |
21 | |
22 | |
23 void db_close() { | |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
24 sqlite3_close(db); |
0 | 25 } |
26 | |
27 | |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
28 /* |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
29 static int callback(void* NotUsed, int argc, char* argv[], char* azColName[]){ |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
30 NotUsed = NULL; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
31 int i; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
32 for (i = 0; i < argc; i++) { |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
33 printf("%s = %s\n", azColName[i], argv[i] ? argv[i]: "NULL"); |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
34 } |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
35 printf("\n"); |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
36 return 0; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
37 } |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
38 |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
39 int rc; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
40 char* zErrMsg = 0; |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
41 rc = sqlite3_exec(db, query, callback, 0, &zErrMsg); |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
42 */ |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
43 |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
44 |
0 | 45 void db_query(char* query) { |
46 int error; | |
11
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
47 |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
48 error = sqlite3_prepare(db, query, -1, &stmt, NULL); |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
49 if (error) { |
176ee28e7464
switched from mysql to sqlite; (+ some cleanups)
meillo@marmaro.de
parents:
4
diff
changeset
|
50 fprintf(stderr, "SQL error: %s\n", sqlite3_errmsg(db)); |
0 | 51 } |
52 } |