SQLite support: scoped verification

Checked 30 September 2026. The landing page makes specific claims about relationships, constraints and transactions rather than promising compatibility with every SQLite extension or configuration.

What was verified

The packaged native Windows SDK passed 19 checks: seven positive behavior checks, four invalid-data rejection checks and eight excluded-form rejection checks. Machine-readable results.

CapabilityObserved behavior
Managed transactionsAn order and its stock update commit together. A failing stock constraint rolls back the order, stock change and trigger effect.
Foreign keysWith PRAGMA foreign_keys=ON set on the connection, an order referring to a missing product is rejected.
Other constraintsCHECK, UNIQUE and NOT NULL reject invalid writes.
Relational queriesA JOIN, aggregation and a persistent view return the expected related records.
Schema featuresIndex creation succeeds; a trigger runs inside the transaction.
SQL expressionsA recursive CTE and a window function produce the expected results.
Publish/reopenTables, the foreign-key definition, view and trigger survive publishing to a local-directory remote and opening a fresh local database from it.

This is a focused check, not an exhaustive SQLite certification. Native runtime verification used the Windows SDK built from df3809a06183f35424f6cb3bcd75a11b8c05234d. It did not rerun every platform, cloud provider, optional extension, PRAGMA or concurrency scenario.

Intentional boundaries

The source review at 3018fe73de07232b15157e2c43577832a8a10fa7 found these boundaries in the public API contract and native admission code:

These limits concern the single-database storage profile and API ownership. They do not remove the relational features demonstrated above. A locally atomic transaction is not a promise of globally serializable transactions across disconnected devices. Replay ordering and conflict handling remain separate parts of the synchronization model.

Live example on the page

The “Relationships. Constraints. Transactions.” example uses the bundled potluckdb browser engine, from the same packaged source revision. It creates a disposable local database on demand and enables foreign keys explicitly. One managed transaction inserts an order and reduces stock. The out-of-stock action violates CHECK(stock >= 0); the missing-product action violates a foreign key. A query joins the two tables to display the result.

The example does not contact cloud storage, place a real order or synchronize with the hero. Its reset closes the database and removes only the temporary directory created by this example. The hero is a separate, clearly labeled interaction illustration.

Source references