SQLite Database Is Locked: Diagnose the Cause
A lock error is a coordination problem, not a reason to delete the database. First identify whether the message comes from SQLite itself or from the browser workspace.
If another SQLite Lab tab owns saved storage
Close the other workspace tab and reload this one to retry saved storage. If that tab contains temporary work, export it first. You can choose a temporary session instead; it does not open the saved pool. Clearing site data removes saved databases and is not a troubleshooting first step.
If another application holds the SQLite file
In a desktop or server application, SQLITE_BUSY commonly indicates another connection is using the database in a conflicting way. Finish the transaction in the owning application, finalize active statements and keep write transactions short. A busy timeout can help with short conflicts but does not fix a transaction that never finishes. SQLITE_LOCKED can instead concern operations within the same connection or shared cache.
Import a complete snapshot
SQLite Lab works on a browser copy, so it cannot release a lock in your desktop application. Use the source application’s backup/export facility to create a complete snapshot. Copying only a live database file can omit data still in its WAL. Do not delete WAL or journal files to force access.
Check what you opened
Inspect the schema after importing the snapshot. This read-only query lists user tables. Export your browser changes separately; they do not update the source application.
SELECT name FROM sqlite_schema WHERE type='table' AND name NOT LIKE 'sqlite_%' ORDER BY name;Open this example for review →Keep exploring
SQLite syntax reference · Practice with a learning path · Sample datasets
How to Open a .db File in Your Browser
Reference: Official SQLite documentation