]> jfr.im git - irc/quakenet/newserv.git/blobdiff - sqlite/sqlite.h
SQLite support is now complete, if it returns busy the queries are queued up, a query...
[irc/quakenet/newserv.git] / sqlite / sqlite.h
index 3bc9765f2e1a0219ecc54134ef6d908ba4f0ff4e..b6f0c16fcdf00c5b14bc70ffcb17b111444ed332 100644 (file)
@@ -3,14 +3,19 @@
 
 #include <sqlite3.h>
 
-typedef sqlite3_stmt SQLiteConn;
-typedef int SQLiteModuleIdentifier;
-typedef void (*SQLiteQueryHandler)(SQLiteConn *, void *);
+#ifdef SQLITE_THREADSAFE
+#error cannot use thread safe sqlite, recompile with --enable-threadsafe=no
+#endif
 
 typedef struct SQLiteResult {
-  SQLiteConn *r;
+  sqlite3_stmt *r;
+  char first, final;
 } SQLiteResult;
 
+typedef SQLiteResult SQLiteConn;
+typedef int SQLiteModuleIdentifier;
+typedef void (*SQLiteQueryHandler)(SQLiteConn *, void *);
+
 void sqliteasyncqueryf(SQLiteModuleIdentifier identifier, SQLiteQueryHandler handler, void *tag, int flags, char *format, ...);
 
 int sqliteconnected(void);
@@ -28,7 +33,8 @@ int sqlitequerysuccessful(SQLiteResult *);
 
 #define sqlitegetvalue(result, column) (char *)sqlite3_column_text(result->r, column)
 
-void sqlitecreateschema(char *schema);
+void sqliteattach(char *schema);
+void sqlitedetach(char *schema);
 void sqliteloadtable(char *tablename, SQLiteQueryHandler init, SQLiteQueryHandler data, SQLiteQueryHandler fini);
 
 #endif