Skip to content
Tinker
Download

The rest of the app, one claim per picture. Every one of these is a screenshot of it running, not a rendering.

The map, the chart and the completion list are on the home page. These nine are what surrounds them: the views that show a database whole, the small refusals that keep a wrong value out of a table, and the Redis beside it.

An estimate is labelled as an estimate.Objects overview of a schema: kind, size, engine, collation, owner. Every figure comes from the introspector, and nothing here runs COUNT(*) behind your back.
Drop two tables on the canvas and the foreign key becomes the join.The builder writes fully quoted, schema-qualified SQL, so it runs unchanged wherever you paste it.
A filter is conditions, not a string you concatenate.Conditions join with AND or OR. Values are sent as parameters, never interpolated, and the filter runs on the server.
Precision survives the round trip.The cell inspector shows the raw value: JSON pretty-printed, binary as a hex dump. decimal and timestamp keep the server’s own text, never routed through Double or Date.
A column with three legal values offers three, and refuses a fourth.An enum opens its members over the cell with the current one ticked; a MySQL SET gets checkboxes and an Apply button. A value that is not one of the column’s own is refused before anything is written, and the message names the ones that are.
A type is named the way its engine’s manual names it.Every type each engine documents, in the manual’s own chapters, with its aliases beside it — bigint · int8 — and its size and range one line down. The enum somebody defined last week sits at the top.
A foreign key is chosen from what exists, and advised before it is sent.The referenced table and each pair of columns come from lists of what the server has. Every ON DELETE and ON UPDATE action says what it will do, and a key the server would refuse is flagged before it is asked.
A Redis key opens as the type it is.Strings, hashes, streams and JSON, and the time series, Bloom filters and vector sets of Redis 8 — each in a view of its own, under the name the Redis manual gives it.
A large table never has to fit in memory.Export streams rows to disk as they arrive: CSV, JSON, NDJSON, SQL INSERT and Excel. Dump, import and transfer work the same way — including a transfer between two different engines, which carries each column’s collation between two MySQL servers and says what it had to leave behind when it cannot.

Nine pictures, nine claims. Two things are worth doing with them.