Skip to main content
Click the chevron on a JSON or blob cell to open its value in a popover anchored to that cell. Which viewer opens follows the column: its declared type, or the Display As choice on its header, and that choice changes rendering only, never what is stored. Whether it opens for editing follows the row and the column. A row marked for deletion opens nothing at all. A result the app cannot write back to, a generated column, and a column the driver marks immutable such as MongoDB’s _id all open read-only; Change Tracking covers which results are writable. PHP serialized values, and binary past the hex cap, are read-only for everyone.

Display as formats

Right-click a column header and pick Display As. The submenu lists the formats that fit the column type, with a checkmark on the active one. An override persists per column, scoped to the connection and table. A column with a format set copies in that format when you copy the single cell; a block of cells or a whole row always copies the stored value. Id-like binary and character columns, and integer columns whose names read as timestamps, pick up UUID and date rendering on their own. Smart value detection in Settings > Data turns that off, and a manual choice always wins over it, Raw Value included. MongoDB binary columns never offer UUID, since the driver decodes them under its own Legacy UUID Encoding setting; see MongoDB.

JSON viewer

A JSON-typed column opens on the chevron; double-click or Enter edits it inline instead. A text column holding JSON needs Display As > JSON first. The popover has two modes. Text is syntax-highlighted and pretty-printed, and editable when the cell is. Tree is collapsible, with a search field, and navigation only. Both keep your key order and exact number values, integers larger than JavaScript can represent included.
JSON editor popover

JSON editor popover with Text and Tree modes

The mode you switch to becomes the default for the next value, which is the same preference as JSON Viewer > Default view in Settings. The pop-out button detaches the viewer into its own resizable window. Opening a value and seeing it pretty-printed is not an edit: the row is marked changed only once you alter the content. Save commits a compact value, key order and numbers preserved, through the change tracking queue. Text that is not valid JSON prompts first.

Filtering a tree

The search field above the tree filters keys and values as you type. The PHP serialized tree works the same way.
  • Matching ignores case and accents, so cafe finds café. Full-width and half-width differ: ABC does not find ABC.
  • A row matches on its whole value, not the shortened form shown, so a match deep inside a long string counts. A match under a collapsed parent opens its parents, and a key that matches keeps its contents and stays expandable.
  • A filter that matches nothing says so, and says separately when the document was cut at 5,000 nodes, since the rows past the cut were never searched.

PHP serialized viewer

Set Display As > PHP Serialized on a text column, then double-click or press Enter. The viewer is read-only: PHP serialized values round-trip through PHP itself. Tree mode filters the same way as the JSON tree, with type badges on the nodes (str, int, arr, obj, ser, ref) and visibility badges on object members (protected, private (ClassName)). A custom-serialized class (the C: token) is one opaque leaf, and a reference (r:/R:) shows as → #N and is not followed. Raw mode shows the original string with text selection.

Blob and hex

A blob cell renders in the grid as compact hex (0x48656C…). Click the chevron or double-click for the popover: a classic hex dump with offset, byte columns, and ASCII, plus an editable hex field under it on an editable table. That field takes spaced or continuous hex, with or without a 0x prefix, and invalid hex disables Save.

Limits

A value that refuses to open in one mode still opens in another.

Row details inspector

View > Show Inspector (Cmd+Option+I) opens the right sidebar. Select a row and every field appears with an editor matched to its content, with no Display As step: JSON columns and text values that parse as JSON get the JSON editor, PHP serialized values the read-only tree, blob columns the hex editor, and enum, set, and boolean columns get pickers.
Row details inspector

Row details inspector with per-field editors

JSON and PHP fields carry buttons to expand inside the sidebar or pop out to a window. Hover an editable field for a menu that sets NULL, the column default, an empty value, or a SQL function. With no row selected, the inspector lists table statistics instead: data, index and total size, row count, average row size, engine, collation, and creation and update dates, as far as the database reports them. On a Structure tab it follows the structure grid instead of the rows. For whole-row JSON, switch the result to JSON mode with the switcher at the leading edge of the status bar, or from View > Result View. It shows what the grid shows, in the same order, minus hidden columns and rows marked for deletion, which the count line reports separately. Select rows in Data mode first to narrow it, then click Copy JSON.