# SQLite binding (first slice) This is the first end-to-end V3 C binding test, not a replacement for the full `m2SQLITE` binding. Current surface: ```modula2 sqlite3_open sqlite3_exec sqlite3_close SQLiteOk ``` The smoke test opens an in-memory database, creates a table, inserts a row, and closes the handle. ## Build/run ```sh ./run.sh ``` The script uses `pkg-config --libs sqlite3` when available; otherwise it links the versioned runtime library directly: ```text /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 ``` That fallback matters on systems with the SQLite runtime installed but without `libsqlite3-dev`. ## Notes - `sqlite3_open` and `sqlite3_exec` exercise the C string ABI. - `VAR db : ADDRESS` exercises opaque C handles. - The smoke test uses no callback; callback bindings come after the generic SQLite callback ABI is designed. - The full `m2SQLITE` definition remains the source for later API coverage.