Back to list

SQLite - Database Query

Lv.5756@mukitaro16 playsDec 31, 2025

SQLite prepared statement with parameter binding. Demonstrates safe database queries in C.

preview.c
C
1#include <sqlite3.h>
2#include <stdio.h>
3
4int query_users(sqlite3 *db)
5{
6 sqlite3_stmt *stmt;
7 const char *sql = "SELECT id, name, email FROM users WHERE active = ?";
8 int rc;
9
10 rc = sqlite3_prepare_v2(db, sql, -1, &stmt, NULL);
11 if (rc != SQLITE_OK) {
12 fprintf(stderr, "Failed to prepare: %s\n", sqlite3_errmsg(db));
13 return rc;
14 }
15
16 sqlite3_bind_int(stmt, 1, 1);
17
18 while ((rc = sqlite3_step(stmt)) == SQLITE_ROW) {
19 int id = sqlite3_column_int(stmt, 0);
20 const char *name = (const char *)sqlite3_column_text(stmt, 1);
21 const char *email = (const char *)sqlite3_column_text(stmt, 2);
22 printf("User %d: %s <%s>\n", id, name, email);
23 }
24
25 sqlite3_finalize(stmt);
26 return SQLITE_OK;
27}

Custom problems are not included in rankings