Last updated: 2026-07-11
Changelog
Release history for Jam SQL Studio. Each release is also shown inside the app via the What's New dialog.
1.4.16 — 2026-07-10
Highlights: Visual Query Editor, MetaInfo-driven autocomplete, and the Visual DDL Editor — build, edit, and run full SELECT/DML queries (joins, HAVING, INSERT, set operators, MERGE, recursive CTEs) in a focused editor, get JSON-path / enum / loose-FK suggestions, and round-trip structural DDL edits across the Query Editor and Table Designer.
- Feature SQL Dashboards — multi-tile dashboards over live queries. Build dashboards of chart, stat, table, pivot, and note tiles over any saved connection from the new Dashboards toolbar button, with a per-engine DBA template catalog, auto-refresh under a read-only policy, parameters, cross-filtering, stat-tile alerts, present mode with playlists, and PNG/PDF export (interactive HTML snapshot on Pro). See the SQL Dashboards docs.
- Feature Dashboards — pin from anywhere, draft with AI. Pin results straight from the Query Editor, Table Explorer, or a chart; draft tiles with AI (single-tile Ask-AI and a whole-dashboard Build with AI panel); and let AI agents manage dashboards via new
dashboard_*MCP tools. - Feature Query Editor — inline type-mismatch warnings on comparisons like
WHERE total = 'free', plus hover-for-type on columns and function calls; both toggle under Settings → Advanced → SQL autocomplete. See the Query Editor docs. - Feature Autocomplete. The SQL editor and Visual Query Editor now suggest JSON paths, enum values, and loose-FK joins from your database metadata, with a Schema Compare JSON-classification diff and a Table Designer JSON toggle.
- Feature Command Palette — added “Migrate Database to Connection” and “Migrate Table to Connection” to start a cross-engine migration without the Object Explorer.
- Feature Visual Query Editor — a new way to build queries. The Visual button in the main toolbar and Cmd/Ctrl+Shift+V open a focused editor — or a compact popover anchored at your cursor — for any SELECT/DML statement, with a one-click Edit as SQL fallback for statements it can’t yet parse, a Report button to flag gaps, a statement picker for multi-statement buffers, and full keyboard navigation. See the Visual Query Editor docs.
- Feature Visual Query Editor — building queries. Searchable, table-grouped pickers for columns, filters, sorts, and group-bys with bulk-add; join any reachable table (not just foreign-key matches) via an explicit two-column ON editor, with foreign-key joins now suggested for PostgreSQL and Oracle too;
WHEREfilters get the full filter editor (enum pickers, JSON-path sub-operators, loose-FK lookups); andIN (SELECT …)subqueries can be drilled into and edited in place. - Feature Visual Query Editor — edits nearly every clause now.
LIMIT/OFFSET,DISTINCT, andOVERedit inline;HAVINGgets full parity withWHERE(pills, rail, aggregate-function templates);INSERTis fully editable end to end (columns,VALUEScells,INSERT…SELECTdrill-in,ON CONFLICT/ON DUPLICATE KEY UPDATE,RETURNING); set-operators switch kind (including OracleMINUS) andMERGEbranches can be added or removed; and recursive CTEs are fully editable with labelled anchor/recursive branches and self-reference-safe rename. - Feature Visual Query Editor — runs in place. Opens to a starter canvas with a table picker (or from the Command Palette), runs your query in place with an Execute/Stop button and a full results panel, and the compact popover now edits
GROUP BY/HAVINGinline (with drag-to-reorderGROUP BYchips) and shows a DDL summary card with a one-click Table Designer hand-off; structural edits get a preview-before-commit dialog and full-tab undo/redo. - Improvement Visual Query Editor — clearer guidance. A readiness banner explains when editing is available, confirmation prompts guard removing the only data source or a referenced CTE, drill breadcrumbs are named by identifier, section notices call out OR filters and aggregates, CTEs gain bulk expand/collapse,
VALUESgrids show row numbers, saves confirm with a toast, and a keyboard-shortcut guide opens with ?; editing now also activates correctly on connected SELECT/DML statements. - Feature Visual DDL Editor — Query Editor inline toolbar. Park the cursor inside a
CREATE TABLE/ALTER TABLE/CREATE VIEW/CREATE MATERIALIZED VIEW/CREATE SEQUENCE/CREATE TYPE/CREATE DOMAIN/CREATE SCHEMA/CREATE TRIGGER/CREATE PROCEDURE/CREATE FUNCTIONstatement and a floating object-aware DDL toolbar lights up with structural-edit affordances, always previewing the diff before committing. A dependency-aware guard blocks destructive drops with incoming dependents, an optional dependency mini-graph shows neighbors (toggled from the editor sidebar), unsupported affordances render disabled with a reason, and every edit commits as one Monaco-native undo step. See the Visual DDL Editor docs. - Feature Table Designer — buffer-backed structural editing. Now backed by a single
CREATE TABLE/ coalescedALTER TABLEbuffer (with a View SQL toggle) and full editing for constraints (primary/foreign/unique/check/defaults), indexes (filtered, covering, expression, and engine-specific types with per-row rebuild/reorganize/reindex), storage and partitioning, and identity/generated columns/collation. See the Table Designer docs. - Improvement Find references — procedural body coverage. Right-click a table or column and pick Find References (or invoke it from the Object Explorer / editor) and Jam now surfaces hits inside stored procedures and triggers in addition to views, scalar functions, and inline TVFs. Bare-identifier references in
WHERE/HAVING/ORDER BYclauses (e.g.WHERE user_id = p_user_id) are captured when theFROMscope contains exactly one relation; ambiguous bare names in multi-table joins are honestly skipped to avoid false-positive hits. Covers MSSQL, PostgreSQL, MySQL, and Oracle. - Fix Query Editor — MySQL
DELIMITER-wrapped routine scripts and SQLite multi-statement triggers now execute correctly, MSSQLGO-batch splitting (includingGO Nrepeats) is more robust, and OracleRETURNING … INTOstatements no longer fail on missing binds. - Improvement Autocomplete — stored-procedure and trigger completion is dramatically faster on large scripts, and a one-time toast now tells you when a schema is too large for IntelliSense to load in full.
- Improvement SQL Server connections — IntelliSense (completion, hover, signature help, syntax diagnostics) and query execution now run fully in-house, and the bundled SQL Tools Service no longer launches on macOS or Linux.
- Fix Table Explorer — the enum value-picker filter now appears for SQLite and MySQL columns (it was previously shown only for PostgreSQL, MSSQL, and Oracle).
- Fix Schema Compare — comparing PostgreSQL databases with extensions (e.g. PostGIS) no longer floods the diff with hundreds of extension-owned functions or stalls on function-heavy schemas; extension objects are excluded (as pg_dump does) and definitions load in bulk.
- Feature Query Editor — SQL/PGQ property graph support for Oracle 23ai+ and PostgreSQL 19 (beta):
GRAPH_TABLEsyntax recognition and schema-aware completions (graphs, labels, properties). See the Query Editor docs. - Fix Tabs — reopening a tab from history no longer discards a manual rename.
- Fix Rename Table/Column — renaming an object no longer corrupts dependent procedure, view, and trigger bodies: the schema qualifier and table alias survive the rewrite, and a schema-qualified reference only rewrites the matching table (never a same-named table in another schema).
- Feature Database Blueprint — rebuild data sidecars offline from the folder’s
.data.sqlfiles via the missing-sidecar banner’s new “Rebuild from .data.sql” action. See the Database Blueprint docs. - Feature Query Editor — live syntax-error squiggles for MySQL, Oracle, and SQLite. See the Query Editor docs.
1.4.15 — 2026-07-09
- Feature Azure Data Explorer (KQL) — connect to ADX clusters and App Insights/Log Analytics, run KQL with IntelliSense in the editor and SQL Notebooks, browse tables read-only with enum, JSON-path and loose-foreign-key filter chips, and chart | render results. Learn more →
- Feature Connections — Browse Azure picks ADX clusters, App Insights, Log Analytics, Azure SQL and PostgreSQL flexible servers straight from your Azure account (Add Connection + Import). Learn more →
- Feature Object Explorer — Oracle 23ai SQL/PGQ property graphs appear under a Property Graphs node with Script as CREATE / DROP and a GRAPH_TABLE starter-query template. Learn more →
- Feature PostgreSQL 19 (beta) support — SQL/PGQ property graphs, REPACK maintenance scripts, partition MERGE/SPLIT, autovacuum scores, EXPLAIN IO statistics, case-insensitive JSON filters, and more. Read the blog post →
- Fix SQL Notebooks — fixed Oracle connections failing to run any cell (“execute is not a function”); notebooks now fully support Oracle with pinned sessions.
- Feature Object Explorer — pin Table Explorer views, queries, and notebooks to the connection tree and reopen them with a double-click. Learn more →
- Feature Spatial / PostGIS — map geometry & geography columns across PostgreSQL, MySQL, SQL Server, Oracle and SQLite with peek maps, a Query Editor Map view, a Table Explorer map pane with bounding-box, distance and draw-an-area spatial filters, a Spatial Explorer workspace, and curved-geometry rendering (basemap on by default). Learn more →
- Fix Schema Compare — generated sync scripts no longer append a semicolon to SQL Server procedure, function, and view definitions, so applied objects stay byte-identical to the source.
1.4.14 — 2026-07-04
- Feature Connections — paste a connection string (ADO.NET, URL, JDBC, EZConnect, libpq, SQLite path) into the New Connection dialog or the command palette to prefill the form. Learn more →
- Feature Connections — import your saved connections in one click from other database tools (Azure Data Studio, VS Code, SSMS, DBeaver, DataGrip, TablePlus, MySQL Workbench, Navicat, pgAdmin) and standard config files (tnsnames.ora, pg_service.conf, .my.cnf, ODBC), via the new Import… menu, the command palette, or the start page. Learn more →
- Feature Connections — detect local Postgres, MySQL/MariaDB, SQL Server, and Oracle databases running in Docker and add them in one click, with credentials read straight from the container environment. Learn more →
- Fix Notebook — Markdown headings in the cell preview now render at their proper heading size instead of appearing as plain body text.
- Fix Schema Compare — script generation and formatting fixes.
Show more info…
- Select all now selects only the objects visible under the active filter.
- Generated scripts include computed column definitions.
- Re-comparing after applying a generated script no longer flags procedures and views as modified (trailing semicolon).
- SQL formatting keeps the required parentheses around CREATE FUNCTION parameters.
- Improvement Query tabs — a script that scripts an object (e.g. CREATE OR ALTER PROCEDURE) is now titled after the object, like GetUsers(Create/Alter), even when a leading USE/GO preamble precedes it.
- Fix Crashes — brief network interruptions (Wi-Fi switch, sleep/wake, VPN) no longer show a crash dialog, and a repeating crash can no longer spam dialogs.
- Feature Table Explorer — JSON path suggestions in the filter chip's peek popover now match the grid's active filters (with a whole-column escape), so polymorphic JSON columns suggest the right variant's properties. Learn more →
1.4.13 — 2026-06-16
- Improvement Database Blueprint — Sync Data now round-trips Unicode text, very large integers, and MySQL date/backslash values losslessly, and Refresh from DB keeps the data sidecar files of still-selected tables. Failure reporting is clearer throughout: the git panel blocks committing with unresolved merge conflicts, drift-scan and git-status errors surface properly, and disabled buttons explain why.
- Fix Fixed crashes when viewing a Blueprint file diff after reconnecting, switching between Schema Compare object diffs, re-running a query tab twice in quick succession, exporting results that contain an invalid date, rapidly switching between query tabs (a rare editor render crash), and a phantom “Query timeout” crash dialog that could appear seconds after a SQL Server connection failure.
1.4.12 — 2026-06-13
- Improvement Improved timeout handling for SQL Server queries and connections.
- Feature Schema Compare — limited support for comparing two databases on different engines.
Show more info…
Point Schema Compare at a source and target on different engines (for example SQL Server vs PostgreSQL) and it compares tables in full on a canonical type model — columns, types, nullability, keys, constraints, and indexes — plus a name-presence inventory of views, procedures, functions, and triggers so you can see what is missing on each side. Object bodies (T-SQL vs PL/pgSQL) are never auto-translated, and sequences are not compared across engines.
- Feature Cross-engine migration — copy a table’s full schema and data to a connection of any engine (e.g. SQL Server → PostgreSQL).
Show more info…
New Migrate Table and Migrate all tables to Connection… actions copy a table’s full schema — types, identity, defaults, CHECK/UNIQUE, foreign keys (with ON DELETE/UPDATE), filtered + covering indexes, computed columns, and user-defined alias types — plus its data to a connection of any engine. The migration runs in its own workspace tab with live per-table progress, streams data in chunks so large tables never load into memory, and can be cancelled mid-run with a prompt to drop or keep partially-copied tables. A Preview scripts the migration and shows the exact row count it will copy (a 50-row sample, with a banner noting the rest is streamed chunk by chunk), and a “needs manual follow-up” checklist flags anything engine-specific.
- Fix Schema Compare (SQL Server) — the generated synchronization script now includes ALTER COLUMN statements for datetime2/datetimeoffset/time precision changes that the overview flagged as “length changed” but the script previously dropped.
1.4.11 — 2026-06-03
- Fix SSH issue resolved.
1.4.10 — 2026-05-25
- Feature SSH Tunneling — connect through a bastion without manual port forwarding.For PostgreSQL, MySQL, Oracle, and SQL Server databases sitting behind a firewall, check Connect via SSH tunnel in the connection dialog and fill in the SSH host, port, user, and auth method. Supports SSH agent, private-key (with optional keychain-saved passphrase), and password auth (also keychain-saveable). Start typing a Host alias from
~/.ssh/configto auto-fill host, user, port, and key file. Test Connection is stepwise — it reports the SSH leg and the database leg separately so you can tell exactly which side needs attention. - Feature Object Explorer — pin databases, schemas, folders, and objects.Pin databases, schema containers, folders (Tables / Views / Stored Procedures / Functions), and individual objects to a list above Databases under each connection. Hover any pinnable row and click the outline pin on the right; the icon becomes a filled pin that stays visible. Pinned rows from the same database are grouped into subtle tinted areas with a tiny db-name header (a pinned database with no same-DB siblings renders standalone; single-accessible-DB connections hide the header). Pinned rows are expandable shortcuts — click the chevron and they drill into the same children as the canonical tree. Drag a pinned row by the grip handle on the left to reorder; dropping a pin from one database into the middle of another database's pins simply splits the grouping in place — the pin keeps its database. When pins exist, Databases no longer auto-expands on connect, and the sidebar search excludes the pinned shortcuts so a pinned row never shows up twice. Removed-or-missing targets show lightly greyed when disconnected and strongly greyed with a "no longer present in the database" tooltip when the parent listing has loaded without them.
- Feature Database Blueprint (beta) — schema + data as a folder of .sql files.Materialize a database's full schema and reference data as a folder of
.sqlfiles kept in two-way sync with one or more linked databases — with Refresh from DB, three-way merge, Apply folder to DB, captured row data, per-link MetaInfo, and a built-in Git panel. Supported on MSSQL, PostgreSQL, MySQL, Oracle, and SQLite; Pro is required for databases with more than 200 objects. - Improvement Data Compare — clearer empty/error states and reliability fixes.A bundle of clarity and correctness improvements:
- A comparison with no differences shows an explicit “Source and target data has no differences” message instead of an empty grid.
- A failed comparison (missing column, inaccessible table, dropped connection) now shows the error in the results area instead of silently returning to the empty “select tables” state.
- Switching the compared table re-detects the value/key column mappings, so you no longer get blank Value Columns or an “Invalid column name” failure.
- Collation-independent merge-join ordering eliminates phantom inserts/deletes on binary collations (e.g. PostgreSQL
COLLATE "C"). - Oracle row-count estimation reads both upper- and lowercase
cntaliases, so the Personal-mode row-count cap is no longer silently bypassed.
- Feature Table Explorer — foreign-key navigation breadcrumb.Drill through foreign keys without leaving the tab:
- Foreign-key clicks drill into the referenced row in the same tab via a clickable breadcrumb tree;
Cmd-click (Ctrl-click on Windows / Linux) or the … menu still opens a new tab. - Loose foreign keys are first-class hops, navigable identically to declared FKs — including the peek popover and mini-grid icon column.
- Pure m2m join tables auto-collapse from the breadcrumb (e.g.
orders → order_items → productsrenders asorders › products); right-click a chip and pick Show join tables to override per-table. Cmd+← Cmd+→ Cmd+↑ Cmd+↓(Ctrlon Windows / Linux) traverse the breadcrumb tree; all four are rebindable from Settings → Keybindings.
- Foreign-key clicks drill into the referenced row in the same tab via a clickable breadcrumb tree;
- Feature Table Explorer — Single-Row Details View.A new full-workspace view shows row cells (categorized into Identity / Profile / Foreign keys / State / Timestamps / Counters / Metadata) and related (inbound-FK) data side-by-side, with lazy-loaded Related Data sections.
- Feature Cell edit — enum + FK pickers.Editing a cell in a declared/native enum column now shows a values peek with live filtering (free text always works as a fallback). Editing a cell in a real or loose foreign-key column offers a Search row in … link that opens the same row picker used by filters; polymorphic loose FKs list one entry per matching declaration. Both pickers work in the Query Editor results grid and in Table Explorer.
- Feature MCP & CLI — add connections from agents.AI agents can now add new database connections via the new
connections_addMCP tool andjam-sql connection addCLI command. Off by default; enable in Settings → AI Integrations → Allow AI to add new connections (Deny / Confirm each / Allow). The tool test-connects before saving and encrypts the password at rest. - Fix Schema Compare — loud failure on per-object fetch errors.If a per-object metadata or definition fetch errors mid-comparison (e.g. a stale connection after macOS sleep), Schema Compare now surfaces a clear error naming the failing object instead of silently dropping it from the snapshot. Previously the missing object would be flagged "only in source" on every retry-free run, and the generated
CREATEscript would fail with MSSQL error 2714 ("There is already an object named … in the database"). - Fix Destructive-query confirmation — two tiers, routine bodies ignored.
CREATE/ALTER PROCEDURE,FUNCTION,TRIGGER, andPACKAGE/TYPEbodies no longer false-trigger the dialog when their bodies happen to containDELETE,TRUNCATE, orDROPkeywords (the routine wrapper is inert at submission). A top-levelDROP PROCEDURE/FUNCTION/TRIGGER/VIEWnow shows a milder, distinctly-worded confirmation — the strong "permanent data destruction" warning is reserved for actual data destruction (DROP TABLE,TRUNCATE,DELETE/UPDATEwithoutWHERE). Applies to MSSQL, PostgreSQL, MySQL, Oracle, and SQLite. - Improvement Query Editor — long-running queries no longer feel stuck.The default query timeout is raised from 15 s to 5 min (set Settings > Advanced > Query timeout to
0for no client-side limit); existing installs with the legacy 15 s default are auto-migrated to 5 min on next launch. After 8 seconds the execution-time timer in the status bar turns amber and pulses, and the “Executing query…” indicator above the results grid changes to “Executing query… taking longer” with a one-click Stop — nothing shifts in the toolbar. Multi-batchCREATE OR ALTERand schema-compare apply scripts on SQL Server now execute batch-by-batch through the direct driver so they aren't throttled by SSTS notification overhead. - Fix Licensing — sign-ins stay signed in, with an honest “Verify Now”.Fixed a regression where signing in no longer kept you signed in: the auth request stopped requesting
offline_access, so no refresh token was issued and your Pro session asked for re-authentication about an hour after every sign-in. “Verify Now” on the offline-license banner no longer silently does nothing when your session has lapsed — it reports the outcome and, when the session can’t be refreshed, prompts you to sign in again. A stale Pro session now surfaces a clear re-logon banner (sessions otherwise stay sticky — no routine logouts), and proactive token renewal runs in the main process so sessions survive sleep/wake. - Feature Object Explorer — schema-node context menu.Schema nodes now have Script New (Table / View / Stored Procedure / Function templates scoped to the schema) and Script Schema As (CREATE / DROP SCHEMA on SQL Server and PostgreSQL, plus Script all objects to script every table, view, procedure, and function in the schema).
1.4.9 — 2026-05-21
Highlights: JSON & enum column support and filtered loose foreign keys — declare columns as JSON or enum, peek JSON shape, loose FKs on JSON paths, plus source/target filter scoping for polymorphic and soft-delete-aware references
- Feature Filtered loose foreign keys. Loose FKs now support optional source and target filters. A source filter scopes when the FK applies (e.g. polymorphic associations:
commentable_id → posts.idonly whencommentable_type = 'Post'). A target filter narrows valid target rows (e.g. soft-delete-aware:deleted_at IS NULL). A new peek pane in the editor shows live counts and a 5-row sample so you can validate filters by eye. - Feature JSON column support. From the Table Explorer filter chip, a new
jsonoperator works on native JSON columns and on long-text columns you declare as JSON, with property predicates (=,!=,contains,>,≥,<,≤, existence, validity), JSONPath wildcards ($.items[*].qty), andany/allaggregate sub-operators. An eye-icon button next to the JSONPath input peeks the JSON shape — a popover listing every property path observed for that column. Loose foreign keys can also be declared on JSON property paths so a value inside a JSON document behaves like a real FK. Right-click a declared column to open a JSON details dialog with the inferred property paths, a Refresh from DB re-sample, an optional inference filter, and a Remove JSON declaration action — the same Refresh + Filter affordance also appears in the MetaInfo manager, Settings → Meta Info, and the Declare as JSON confirmation. - Feature Enum column support. Declare a column as an enum and its filter chip becomes a values dropdown — sourced from native enum types,
CHECKconstraints, or sampled distinct values, on all 5 engines. Header glyphs and an Enum values details dialog manage declarations, which round-trip through MetaInfo export/import. Learn more → - Feature Filter Wizard — Peek matching rows. A new eye-icon button in every FilterWizard header (Table Explorer, JSON details, Declare-as-JSON) runs the current filters as a
SELECT *with a 50-row cap against the underlying table and shows the matching rows in an inline popover. Useful for sanity-checking a filter before sampling JSON structure or exporting filtered data. - Feature Table Explorer filters — multiple filters on the same column. You can now stack two or more filters on a single column (e.g.
created_at ≥ …ANDcreated_at < …, or two differentjson property =predicates on the same JSON column), which previously was blocked by a “one filter per column” rule. - Improvement Schema Compare — formatting and clearer diff UI. Routine/view/trigger DDL is now formatted before comparison so indentation- or keyword-case-only drift no longer shows as Modified (toggle Format SQL during comparison, or flip per-diff with the Formatted / Raw pill). The diff reads Source-on-left with connection/database labels, a direction toggle generates the sync script either way (Source → Target / Target → Source) without re-running, and the Script Preview dialog has a split-button Open & Execute action.
- Improvement Results grid — more consistent copy. Ctrl+C on a multi-cell selection now copies both plain text and a formatted HTML table, so pasting into Teams, Outlook, or Word renders a real table. A new Copy as HTML option is also available in the copy-to-clipboard menu (both Query Editor and Table Explorer).
- Improvement JSON column ergonomics. Header glyphs now show three distinct, clickable states — a blue
{}for columns with a JSON declaration, a gray{}for undeclared native JSON columns, and a gray{}?for long-text columns whose rows look like JSON; clicking the blue glyph opens the JSON details inspector, either gray glyph opens the declare dialog, and a Declare as JSON CTA appears atop the Expanded Value dialog when a cell parses as JSON. Nativejson/jsonbcolumns can now carry a declaration too — it attaches path/loose-FK metadata without changing SQL emission. On SQL Server, filters that rely onOPENJSON(wildcard paths,any_*/all_*/is empty) now detect databaseCOMPATIBILITY_LEVEL < 130, warn inline with a Recheck link, keep scalar predicates working viaJSON_VALUE/ISJSON, and suggestALTER DATABASE [<db>] SET COMPATIBILITY_LEVEL = 130;when anOPENJSONerror surfaces. - Improvement Table Explorer — drag-and-drop column reordering. Drag a column header to rearrange columns in the grid; the new order is saved per tab and restored on the next app launch.
1.4.8 — 2026-05-10
- Improvement Schema Compare — improved diff UI. Table diffs now surface dependent-object changes (indexes, foreign keys, triggers) and detect column, table-option, and partition differences.
- Fix Schema Compare — schema filter. The schema filter in the setup dialog now correctly narrows comparisons by schema.
- Improvement Connection and database listing. Clearer error messages when something goes wrong, with an option to send a redacted diagnostic report.
1.4.7 — 2026-05-06
- Improvement Better diagnostics when listing databases fails — click Show details to see the real cause, and optionally send a redacted diagnostic report.
1.4.6 — 2026-05-04
Highlights: Schema Compare overview, recently compared shortcuts, and stability fixes
- Feature Schema Compare overview. A new high-level summary of a comparison run — total counts of added, removed, and changed objects grouped by category, with object-level cards you can drill into without leaving the overview.
- Improvement Schema Compare — Recently compared. The setup dialog now remembers source/target databases from previous comparisons and surfaces them at the bottom of the dialog. Pick the most recent run with one click; expand to see older comparisons, with a search box (visible when there are two or more) that filters by connection or database name. Each entry can be removed individually.
- Fix Schema Compare — stability. Stability fixes for the comparison run, including better error reporting when a comparison fails to start.
1.4.5 — 2026-05-01
Highlights: Loose foreign keys — declare cross-table relationships even when the database has no FK constraint
- Feature Microsoft Entra ID (Interactive Browser). New MSSQL auth mode that opens your default browser for a standard OAuth sign-in.
Use it when your tenant blocks the Device Code flow, or to skip entering a user code. Cached sign-in and Tenant ID override apply to both Entra modes. - Feature Loose foreign keys. Declare cross-table relationships even when the database has no FK constraint.
Picklookupon any column in Table Explorer or Data Profiling filters; the picker pre-fills an inferred target. Once confirmed, the column behaves like a real FK. - Feature Loose-FK cell links. Result grids render loose-FK values as clickable links — teal text with a dashed underline and a chain icon, visually distinct from real FKs.
Click opens the row-preview popover with a “Clear loose relation” action. Works in Query Editor results and Table Explorer. - Feature Schema Overview & Dependency Viewer. Declared loose relationships render as dashed blue edges with a “Loose” badge on connected nodes, so user-declared references stay visually distinct from enforced ones.
- Feature Row Details — loose inbound. The Related-data tab now lists inbound loose-FK rows alongside real-FK inbound, each marked with a “Loose” badge so you can navigate declared parents and children from the same panel.
- Feature MetaInfo manager dialog. Open from the Link2 icon in the Table Explorer toolbar or by right-clicking a database in the Object Explorer (“Manage meta info…”). List/remove declarations, or Export/Import the whole MetaInfo file as JSON to share across machines.
MetaInfo is the foundation for future per-database metadata (table descriptions, AI context, tags).
1.4.4 — 2026-04-30
Highlights: Data profiling, foreign-key lookup picker, and a tidier query editor
- Feature Data Profiling workspace. Inspect any column or table without writing SQL. Right-click a column or table in the Object Explorer and choose Profile data to open a dedicated tab with summary stats, histograms, and top values.
- Feature Foreign-key lookup picker in Table Explorer. Filter FK columns without typing IDs — pick a row from the parent table via a searchable dialog with per-column filters and unbounded FK drill-down.
- Improvement Table Explorer. Streaming row loads, page sizes up to 10,000, parallel data + COUNT queries, “Add to filter” on cell right-click, and a redesigned pagination strip with inline progress.
- Improvement Inline toolbar is now optional. The floating Execute / Peek bar above the cursor statement is off by default. Selection-runnable SQL is surfaced through the toolbar Execute button (which relabels to “Selection”), and the cursor statement gets two small gutter icon buttons next to the line numbers. Re-enable the floating bar from Settings → UI if you prefer the old behaviour.
1.4.3 — 2026-04-24
Highlights: Vertical tabs and a collapsible results pane
- Feature Vertical tabs. Optional vertical layout for the Workspace tab bar — toggle via the new dropdown on the tab bar or Settings → UI. Orientation and column width persist across sessions.
- Feature Collapse the Results pane. Hide the Results / Messages / Plan / Chart pane to give the editor full height. Use the chevron on the right side of the results tab bar (next to the zoom controls),
Cmd/Ctrl+J, or “Toggle Results Pane” in the Command Palette. Each query tab remembers its own collapsed state. - Improvement Inline toolbar — shows on any selection. The floating Execute / Peek buttons now appear for arbitrary text selections, not just detected statements.
- Improvement External file-change detection. Open query files are now watched on disk — when a file is modified outside Jam SQL Studio, the editor picks up the change and offers to reload.
1.4.2 — 2026-04-21
Highlights: Inline Query Toolbar and Object Explorer schema grouping
- Feature Inline Query Toolbar. Floating Execute and Peek buttons appear next to the statement under the cursor and on text selections, with smart placement that avoids overlapping code. Toggle via the Query Editor options menu ("Inline toolbar on cursor").
- Feature Object Explorer — Group by schema. When a database has multiple schemas, schemas now appear as top-level folders in the sidebar with Tables, Views, and Programmability nested inside each one. Kicks in automatically for databases with more than 1 schema and more than 15 objects; switch between Auto / Always / Never in Settings → UI → Object Explorer.
- Improvement Query Editor — Configurable tab size. Pick 2, 4, or 8 spaces in Settings → UI → Editor; applies to the Tab key in all query tabs.
- Fix Status bar — query execution time now refreshes and settles correctly in the status bar when a query finishes.
- Fix IntelliSense / auto-complete — assorted fixes for SQL completion accuracy and stability.
1.4.1 — 2026-04-15
Highlights: Large query results — stream millions of rows without hitting the wall
- Feature Large query results — the 50K row cap is gone; stream millions of rows with windowed virtualization, a live population progress bar, and cancel support
- Feature Streaming CSV export — send multi-million row result sets straight to disk with progress tracking
- Improvement Server-side sort and filter on windowed results, full-fidelity clipboard copy, and pin-as-clone for large result tabs
- Fix Chart rendering fix
1.4.0 — 2026-04-05
Highlights: Oracle PL/SQL Debugger, SQL Server Agent Jobs Manager, and Query Editor power features
- Feature Oracle PL/SQL Debugger — step-through debugging for procedures, functions, packages, triggers, and anonymous blocks with breakpoints, variable inspection, call stack, watch expressions, and AI Chat integration (first full PL/SQL debugger on macOS and Linux)
- Feature SQL Server Agent Jobs Manager — browse, run, stop, create, and edit jobs with dashboard, step editor, schedule builder, plus Operators, Alerts, Proxies, and Error Logs management
- Improvement Column Profiling — null %, distinct count, min/max, avg in results grid headers
- Improvement Peek Results — preview SELECT results in a floating panel
- Improvement FK navigation in query results — click foreign key values to jump to referenced rows
- Improvement Connection Color Theming — color-code connections to distinguish prod/staging at a glance
- Improvement Column Inlay Hints — ghost column names in INSERT VALUES and
SELECT *expansion - Improvement Client-Side Result Filtering — filter row for instant search without re-executing
- Improvement Copy/Export as INSERT — engine-aware INSERT statements for MSSQL, MySQL, Oracle, PostgreSQL
- Improvement Quick WHERE Builder — right-click a cell to append it as a WHERE condition
- Improvement Pin Results — pin result sets so they survive subsequent query runs
- Improvement Smart Query History Search — full-text search with filters (Ctrl/Cmd+Shift+Y)
- Improvement Function Parameter Hints — signature help for function/procedure calls across all engines
- Improvement Package Explorer (Oracle) — browse, search, pin, and edit PL/SQL packages across schemas
- Improvement Cell aggregate bar, zoom controls, and column pinning in the results grid
- Improvement F5 shortcut executes the current query; Oracle packages searchable in command palette
1.3.2 — 2026-03-19
AI Agent Skill Support — one command to connect any AI agent
- Feature AI Agent Skill — run
jam-sql add-skillto teach Claude Code, Cursor, Copilot, Codex, Windsurf, and 20+ other AI agents how to use Jam SQL Studio - Feature CLI pairing —
jam-sql pairsecurely connects the CLI to the running app via challenge-response (no manual token copying) - Feature CLI auto-install — the app bundles the jam-sql CLI and installs it to PATH on every launch, always in sync with the app version
- Feature App launch from CLI —
jam-sql launchstarts Jam SQL Studio if not running;jam-sql pairoffers to launch automatically - Feature App status endpoint — CLI detects blocking dialogs (sessions, trial) and guides the user to dismiss them
- Improvement MCP discovery file written on every app start (even when MCP is disabled) so the CLI always knows the app is running
1.3.1 — 2026-03-18
- Fix Fixed SQL Tools Service download failing behind corporate proxies and firewalls (curl error 35) by adding TLS revocation check bypass and Electron net module fallback
1.3.0 — 2026-03-15
Highlights: Oracle Database Support, Command Palette, Multi-Engine DBA Tools
- Feature Oracle Database support — connect to Oracle databases with full Object Explorer, autocomplete, scripting, editable query results, and Security Manager
- Feature Command Palette — quickly search database objects, switch connections, and navigate workspaces with keyboard shortcuts (Ctrl/Cmd+P)
- Feature Session Browser — monitor active sessions, view locks and wait events, and kill runaway queries across Oracle, SQL Server, PostgreSQL, and MySQL
- Feature Performance Dashboard — real-time performance counters, top SQL, wait statistics, memory usage, and error logs for all four engines
- Feature Tablespace Manager — Oracle tablespace usage visualization, datafile details, I/O statistics, and undo monitoring
- Feature Filegroup Manager — SQL Server filegroup layout, database file details, I/O statistics, and ALTER DATABASE script generation
1.2.3 — 2026-03-02
- Fix Fixed Codex CLI finding issues
1.2.2 — 2026-02-26
Highlights: Table sub-objects in Object Explorer, connection & performance fixes
- Feature Object Explorer now shows Keys, Indexes, Constraints, Statistics, and Triggers under each table with Script as DDL support
- Improvement Switching connections preserves the active database when a database with the same name exists on the new server
- Fix Fixed query editor excessive CPU usage when no results are present
1.2.1 — 2026-02-23
Highlights: Codex CLI integration, Charts in Notebooks
- Feature Codex CLI integration for AI Chat
- Feature Charts in SQL Notebooks — visualize query results with interactive charts
- Improvement Charting enhancements across Query Editor and Notebooks
- Improvement Copy object name from context menu in Object Explorer
- Fix PostgreSQL autocomplete fix
- Fix MS SQL IntelliSense restore fix
1.2.0 — 2026-02-12
Highlights: SQL Notebooks, AI Chat
- Feature SQL Notebooks — interactive notebooks with SQL cells, Markdown documentation, and inline results
- Import .ipynb files from Azure Data Studio and Polyglot Notebooks
- Jupyter-style keyboard shortcuts, drag-and-drop cell reordering, and Run All
- Feature AI Chat — conversational AI sidebar powered by Claude Code with full database context
- Available in Query Editor and SQL Notebooks — ask questions, generate queries, and explore your schema
- Type @ to reference tables, views, and procedures directly in your conversations
1.1.1 — 2026-02-11
- Fix Fixed drag & drop of SQL files not working (file path not readable)
1.1.0 — 2026-02-10
Highlights: MySQL support, Editable Query Results, Transaction Management, Clone Database
- Feature MySQL support — connect to MySQL databases with full autocomplete, schema overview, and browser mode
- Feature Editable Query Results — edit result values directly in the query editor grid
- Feature Transaction Management — explicit transaction control (BEGIN, COMMIT, ROLLBACK) in the query editor
- Feature Script Management — manage and organize SQL scripts
- Feature Clone Database — clone an existing database with schema and data
- Feature File Drag & Drop — drag and drop SQL files to open them
- Improvement PostgreSQL and MySQL multiple resultset handling
- Improvement New connections appear at the top of the list
- Fix Query editor performance improvements
- Fix Fixed join results displaying incorrectly when columns share the same name
- Fix Table Explorer and Expanded Value Dialog icon fixes
1.0.8 — 2026-02-06
Highlights: What's New dialog and Expanded Value Dialog
- Feature What's New dialog — see recent changes after each update
- Feature Expanded Value Dialog — view and edit JSON columns with formatted syntax highlighting or multi-line plain text
Try Jam SQL Studio Today
Download the latest version to get all these features and more.