Das Zuhause des Powerhamsters

Abfragen mit SQLite3 ohne Nutzung von Callback Funktionen

C-Code
sqlite3* db;
int rc;
rc = sqlite3_open(DB_NAME, &db);
if( rc )
{
	fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
	sqlite3_close(db);
	exit(1);
}
char* stmt = "SELECT messageid, data FROM messages WHERE userid = ?";
sqlite3_stmt* select_stmt;
if(sqlite3_prepare_v2(db,stmt,-1,&select_stmt,0) == SQLITE_OK)
{
	if(sqlite3_bind_int(select_stmt,1,userid) != SQLITE_OK)
		fprintf(stderr,"Could not bind userid\n");
}
sqlite3_column_int(select_stmt,0);
sqlite3_column_text(select_stmt,1);
while((rc = sqlite3_step(select_stmt)) == SQLITE_ROW)
{
	sqlite3_value* sql3_msgid = sqlite3_column_value(select_stmt,0);
	sqlite3_value* sql3_msgdata = sqlite3_column_value(select_stmt,1);
	printf("MessageID: %d Data: %s\n",sqlite3_value_int(sql3_msgid),sqlite3_value_text(sql3_msgdata));
	...
}
sqlite3_finalize(select_stmt);
sqlite3_close(db);