Test files › Databases › users.sqlite
Sample SQLite database file (users)
A genuinely valid SQLite 3 database with one table (users) and 10 rows, written byte-by-byte from source so the file is reproducible.
↓ Download users.sqlite| Filename | users.sqlite |
| Format | SQLite |
| Size | 8.0 KB (8,192 bytes) |
| MIME type | application/vnd.sqlite3 |
| SHA-256 | 876aa8e4bd7df3ec7f2f9b27d5738b618ed4bda5436cd88f34721edeaa203cf6 |
What this file catchesDatabase import, upload and inspection paths. Opens in sqlite3, DB Browser, Python and any SQLite driver; PRAGMA integrity_check returns ok and ordinary SELECT/WHERE queries work. Also exercises magic-number detection: the file starts with the ASCII string "SQLite format 3".
Handle it in code
Each snippet below was run against this exact file with Python 3.14.4 and Node 24.15.0 when this page was built, and the output shown is what it printed.
Python
A truncated database usually opens and queries without any error: SQLite reads the missing bytes as zeros, so this file returns ten rows of (0, None, None, None). Run the integrity check before importing anything from an uploaded database.
import sqlite3
con = sqlite3.connect("file:users.sqlite?mode=ro", uri=True)
try:
result = con.execute("PRAGMA integrity_check").fetchone()[0]
print("integrity: ok" if result == "ok" else "rejected: " + " / ".join(result.splitlines()[:2]))
except sqlite3.DatabaseError as e:
print("rejected:", e)
finally:
con.close()Run against this file, it prints: integrity: ok
Related guides and tools
Download & verify
curl -fsSL -o "users.sqlite" "https://files.hexaqa.com/db/users.sqlite"
curl -fsSL "https://files.hexaqa.com/db/users.sqlite" | sha256sum
# expect: 876aa8e4bd7df3ec7f2f9b27d5738b618ed4bda5436cd88f34721edeaa203cf6