ใช้ SQLite ใน C/C++ ผ่าน C Interface API
API หลัก
| API | คำอธิบาย |
|---|---|
| sqlite3_open(filename, &db) | เปิด/สร้าง Database คืน Connection Object |
| sqlite3_exec(db, sql, callback, data, &errmsg) | Execute SQL หลายคำสั่ง ใช้ Callback รับผลลัพธ์ |
| sqlite3_close(db) | ปิด Database Connection |
ตัวอย่าง: Connect, Create Table, Insert, Select
// Connect
sqlite3_open("test.db", &db);
// Create Table
sqlite3_exec(db, "CREATE TABLE COMPANY(ID INT PRIMARY KEY, NAME TEXT, AGE INT, ADDRESS CHAR(50), SALARY REAL)", callback, 0, &err);
// Insert
sqlite3_exec(db, "INSERT INTO COMPANY VALUES(1,'Paul',32,'California',20000)", callback, 0, &err);
// Select
sqlite3_exec(db, "SELECT * FROM COMPANY", callback, "Data", &err);
sqlite3_close(db);
Callback Function
int callback(void *data, int argc, char **argv, char **azColName) {
for (int i = 0; i < argc; i++)
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
return 0;
}