]> jfr.im git - irc/quakenet/newserv.git/blobdiff - dbapi/dbapi.h
DBAPI2: add support for stored procedures
[irc/quakenet/newserv.git] / dbapi / dbapi.h
index 07d888b91c83d52bd2844cb41fdd0681e250f76c..4b4453a5fe7b1fc2b7a5f6c766985e0d71b0550c 100644 (file)
@@ -7,6 +7,7 @@
 
 #define DB_NULLIDENTIFIER 0
 #define DB_CREATE 1
+#define DB_CALL 2
 
 #ifdef DBAPI_OVERRIDE
 #undef USE_DBAPI_PGSQL
@@ -43,6 +44,7 @@ typedef PQResult DBResult;
 #define dbgetvalue(result, column) pqgetvalue(result, column)
 
 #define dbclear(result) pqclear(result)
+#define dbcall(id, handler, tag, function, ...) pqasyncqueryf(id, handler, tag, (handler) == NULL ? DB_CALL : 0, "SELECT %s(%s)", function , ##__VA_ARGS__)
 
 #endif /* DBAPI_PGSQL */
 
@@ -75,6 +77,8 @@ typedef SQLiteResult DBResult;
 
 #define dbclear(result) sqliteclear(result)
 
+#define dbcall(...) abort() /* HA */
+
 #endif /* DBAPI_SQLITE */
 
 #endif /* BUILDING_DBAPI */