SQLiteEasy

Support

A SQLite client for macOS

Get in touch

Questions people actually ask

Why does the row count say “1–512 of ?”

Because SQLite cannot say how many rows a query returns without running it to the end. Rather than guess, SQLiteEasy shows what it has read and keeps reading as you scroll. Count All Rows gives you the total; it runs a separate query and is labelled as such.

Why can’t I edit this result?

SQLiteEasy only edits a result when it can identify exactly which stored row each displayed row came from. Joins, aggregates and computed columns have no single row an edit could mean; views need INSTEAD OF triggers, which it will not write for you; a WITHOUT ROWID table needs its whole primary key in the query. The reason is always shown under the grid.

The filter only found a few rows — is that all of them?

No, and it says so. The filter bar searches the rows already read, which on a large table is a fraction of them, so it always shows the denominator. Use Filter in the Database to search the whole table — it composes the same filter as SQL and puts it in the editor for you to run.

A cell shows a size instead of a value

Values over 1 MB are never loaded into the grid; that limit is what keeps memory bounded however far you scroll. Press ⌘I to open the inspector, which fetches the value on demand and can save any size to a file.

My edit was refused

Every update carries the row’s original values in its WHERE clause. If the row changed after you read it, the write matches nothing and is reported rather than replacing someone else’s work. Refresh and try again.

Can it repair a corrupt database?

No, deliberately. File › Check Database reports what SQLite finds and explains the options, but every automatic repair works by discarding what it could not read. That decision is yours to make, on a copy.

Requirements

SQLiteEasy makes no network connections of any kind. See the privacy policy.