#include #include #define MAX_PREPAREDQUERY_INDEX \ sizeof(PreparedQueryTable) / sizeof(CPreparedQuery) #define NEW_PQ(SQL) {SQL, sizeof(SQL), NULL}, namespace MySQL { struct CPreparedQuery { const char* sql; unsigned long length; MYSQL_STMT* handle; }; enum CPreparedQueryIndex { PQ_PLAYER_STAT = 1, PQ_WEAPON_STAT = 2, }; /* Game/Database/MySQL/Queries.h */ static CPreparedQuery PreparedQueryTable[] = { NEW_PQ("SELECT * FROM `player_stats` WHERE `id` = ? LIMIT 1") NEW_PQ("SELECT * FROM `weapon_stats` WHERE `id` = ? LIMIT 1") }; static MYSQL* MySQLConnection; int InitialisePreparedQueryTable (void) { for (int i = 0; i < MAX_PREPAREDQUERY_INDEX; i++) { CPreparedQuery* query = &PreparedQueryTable[i]; query->length = strlen(query->sql); query->handle = mysql_stmt_init(MySQLConnection); /* do some error checking here */ }; }; };