annotate db.c @ 16:3c104b5f5158

fixed small bug
author meillo@marmaro.de
date Wed, 23 Jul 2008 16:49:10 +0200
parents 082566ce7d10
children 5e6c9260913a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
1 #include <stdio.h>
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
2 #include <stdlib.h>
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
3 #include "db.h"
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
4 #include "game.h"
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
5
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
6
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
7
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
8 void db_connect() {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
9 if (sqlite3_open(database, &db) != SQLITE_OK) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
10 fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
11 sqlite3_close(db);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
12 exit(1);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
13 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
14 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
15
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
16
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
17 void db_close() {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
18 sqlite3_close(db);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
19 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
20
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
21
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
22 sqlite3_stmt* db_query(char* query) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
23 int error;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
24 sqlite3_stmt* stmt;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
25
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
26 error = sqlite3_prepare(db, query, -1, &stmt, NULL);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
27 if (error) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
28 fprintf(stderr, "SQL error: %s\n", sqlite3_errmsg(db));
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
29 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
30 return stmt;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
31 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
32
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
33
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
34
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
35 int db_update(char* query) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
36 int error;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
37 sqlite3_stmt* stmt;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
38
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
39 error = sqlite3_prepare(db, query, -1, &stmt, NULL);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
40 if (error || sqlite3_step(stmt) != SQLITE_DONE) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
41 fprintf(stderr, "SQL error: %s\n", sqlite3_errmsg(db));
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
42 return 0;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
43 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
44 return 1;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
45 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
46
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
47
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
48 int read_time() {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
49 sprintf(query, "select time from game;");
16
3c104b5f5158 fixed small bug
meillo@marmaro.de
parents: 15
diff changeset
50 stmt = db_query(query);
15
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
51 if (sqlite3_step(stmt) != SQLITE_ROW) {
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
52 printf("error: %s\n", sqlite3_errmsg(db));
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
53 exit(1);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
54 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
55 gametime = sqlite3_column_int(stmt, 0);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
56 sqlite3_finalize(stmt);
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
57 return gametime;
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
58 }
082566ce7d10 added yet unversioned but needed file db.c
meillo@marmaro.de
parents:
diff changeset
59