SQLITE
Talk to your SQLite database in plain English
Self-hosted text-to-SQL for SQLite. Perfect for embedded apps, analytics extracts, and edge databases.
Connect in one step
Ask in plain English
Real SQLite queries Limerence generates from business questions.
“Daily active users for the last 30 days”
SELECT date(occurred_at) AS day,
COUNT(DISTINCT user_id) AS dau
FROM sessions
WHERE occurred_at >= datetime('now', '-30 days')
GROUP BY day
ORDER BY day;“Extract the user's preferred theme from the JSON settings column”
SELECT id, email,
json_extract(settings, '$.theme') AS theme,
json_extract(settings, '$.locale') AS locale,
json_extract(settings, '$.notifications.daily_digest') AS daily_digest
FROM users
WHERE json_valid(settings) = 1
LIMIT 50;“Search products by description with full-text search”
SELECT p.id, p.name, p.price,
snippet(products_fts, 1, '<b>', '</b>', '...', 10) AS preview
FROM products_fts
JOIN products p ON p.id = products_fts.rowid
WHERE products_fts MATCH 'wireless headphones'
ORDER BY rank
LIMIT 20;How it works with SQLite
- Connects via better-sqlite3 (synchronous, fast) or libSQL HTTP for remote files.
- Schema discovery uses sqlite_schema.
- JSON1 extension is required for JSON columns (built-in since SQLite 3.38).
- FTS5 virtual tables are surfaced and queryable with the MATCH operator.
- WAL mode recommended so reads do not block writers in your application.
SQLite questions
Does this work with Turso or libSQL?+
Yes. Limerence speaks the libSQL HTTP protocol — point it at your Turso URL with an auth token.
Can I query the SQLite file inside an Electron or mobile app?+
Yes, as long as Limerence can reach the file (or a copy) over the filesystem or network.
How does concurrency work?+
SQLite serializes writers but allows multiple readers in WAL mode. Limerence's queries are read-only, so they coexist with your app's writes.
Are attached databases visible?+
Yes, anything attached on the connection appears in schema discovery as schema-qualified tables.
Only your schema structure (table and column names, types) is shared with the LLM. Row data is never sent. Generated SQL runs against your database directly and results stay inside your network.