Windows 10 / 11 · SQLite · PostgreSQL · MySQL

Safe on production, too

Gridge lets you decide how much each connection is allowed to do. On a connection marked as production, a write stops before it reaches the database — and tells you how many rows it was about to touch.

Get it
orders-prodProductionupdate ordersset status = 'shipped'where placed_at < '2026-01-01';This connection is read-onlyThe statement was never sent to the database.Close

The tab you thought you were in

When development and production look identical, you find out you were in the wrong tab after the statement has run. An update missing its where clause looks correct right up until the moment you press enter. Neither is something you can take back.

  • You cannot see where you are pointed

    The connection name gets read after the statement runs, not before.

  • Nothing stops you

    Either there is no confirmation, or it says the same thing every time and stops being read.

  • You cannot tell how much it hits

    Running a count to find out is itself the accident on a large table.

Decide the strength per connection

The risk level belongs to the connection, not to the moment. A rail down the edge of the window and a badge in the toolbar keep it visible the whole time.

  • Development

    Unrestricted

    Nothing is blocked. For databases on your own machine.

  • Staging

    Confirm before writing

    A write raises a dialog showing the statement itself and an estimate of how many rows it will touch.

  • Production

    Read only

    Rather than asking, the connection to the database is opened read-only. Even a statement that slips past the check cannot write.

The guard is doubled. Deciding whether a statement writes is what raises the dialog; the read-only connection is the thing that actually holds. When the check is unsure, it always assumes the statement writes.

Know the blast radius before you run it

The confirmation shows an estimate of the affected rows. It never runs a count to get there: on a large production table the count alone can take minutes, which turns a safety check into the incident. Gridge reads only the estimate the database already keeps, and when there is none it says "unknown" rather than zero.

What the day-to-day needs

  • Three databases, one grid

    SQLite, PostgreSQL and MySQL. Values are shown as they are stored: large integers are not rounded, dates are not silently converted, and two columns with the same name both survive.

  • Connections through an SSH tunnel

    Reach a database behind a bastion host. The host key is always verified, and a key that differs from the one on record is refused rather than offered as a choice.

  • Transaction control

    The badge appears even when you type begin into the editor yourself. Disconnecting with work uncommitted asks first.

  • Checks and formatting before you run

    Unclosed parentheses and columns that do not exist on the table get underlined. The check stays quiet when it is unsure, so the underlines keep meaning something.

  • Tabs for each working surface

    SQL and ER diagrams sit in the same row of tabs. Switching away keeps your undo history and the position you had scrolled the diagram to.

  • Cell viewer

    Open a long text, a JSON document or a binary value and read all of it. Binary is shown as a hex dump.

Screens

A joined query result in the grid, with the connection name and a confirm badge in the top right
Types are shown by alignment rather than colour — numbers right, text left. The badge in the corner and the rail down the window edge are the strength of the connection you are on.
Three tables joined by foreign key lines in an ER diagram
Opened from the right-click menu in the schema tree. It shows the table you picked and the ones a foreign key connects it to directly — never two steps out.

For reading a database more deeply

Looking at one database and writing to it safely is free. Crossing between environments, reading deeper, and recording things to reuse — that is where the paid side starts.

  • Query plans

    Only EXPLAIN is sent. ANALYZE is never used, so looking at a plan never runs the statement.

  • ER diagrams

    Drawn from declared foreign keys only. No line is added because two column names happen to look related.

  • Jump to related rows

    Follow a foreign key one step from a cell, to the row it references and to the rows that reference it.

  • Schema diff and DDL

    Compare two environments. Anything that drops a table or a column comes out commented, so no single click destroys data.

  • Statistics

    Row counts, size on disk and per-column distribution, read from the estimates the database already keeps.

  • Activity monitor

    Watch running queries over a second connection. Only the query is cancelled — the other session stays connected.

  • Audit log

    Keep every statement with its connection and safety mode, and search it later by text. The SQL is encrypted at rest.

  • Formats beyond CSV

    JSON, JSON Lines, Markdown tables and INSERT statements. CSV and TSV stay free.

  • Saved queries with parameters

    Name the statements you run often and call them back with values filled in.

Pricing

Everything that protects you stays free. The row estimate, transaction control and the safety modes are all available without paying.

Monthly

¥300

Yearly

¥3,000

Purchase happens from the licence screen inside the application. Checking a licence key needs no network access.

Terms of sale (Japanese)

Requirements

OS
Windows 10 / 11 (64-bit)
Databases
SQLite · PostgreSQL · MySQL
Interface language
Japanese only
Network
No network access is used to check the licence

Get it

Not yet available

The installer is not being distributed yet. This page will say so when it is.