Guide · Every panel
SQL editor
New SQL editor (Mod-n) opens an editor on the active connection.
Actions
Run(Mod-Enter): the selection, or the statement under the cursor.Run all(Mod-Shift-Enter): the whole script.Cancel runreplacesRunwhile a query runs. It readsCancellation requested…, then the footer saysCancelled. It also closes an openReview high-risk SQLpanel.Format(Shift-Alt-f): formats the SQL.Save SQL(Mod-s): asks for aFile namethe first time, andReplace <file>?if that name is taken.Save SQL as…(Mod-Shift-s) saves a copy.Close editor. With unsaved edits it asksSave changes to <name>?withDon't saveandSave…;Esckeeps editing. A running query asksQuery still runningwithCancel query and close, an open transactionTransaction still openwithRoll back and close, each besideKeep editing. Closing the editor's pane inside a split asks the same.
The lock in the header toggles between Unlock connection and Lock connection.
Query status
The footer, Query status, reads Ready until a run, then the state: Preparing, Awaiting approval, Running with a timer counting up, Completed, Failed or Cancelled. After it: rows loaded, rows affected, the elapsed time, N notices, and when the result was cut Row limit reached · N more not kept, Row limit reached · stopped on the server after N rows, or Size limit reached. A failed run adds Report this problem, and a refused write adds Unlock….
Transactions
The badge reads Autocommit, Transaction open, Transaction failed, State unknown, Disconnected or Unavailable. Begin starts a transaction, Commit ends it, Rollback discards every change since Begin. Refresh transaction asks the server again. Begin and Commit are disabled while the connection is locked.
Completion
Completion offers the connection's tables and columns, automatically unless Suggest completions while typing is off. With Check table and column names on, a table or column the connected database doesn't have is underlined as you type. Snippets: sel, ins, upd, del, join, cte, explain, tx, and fn on PostgreSQL only.
Statement timeout in Settings, off by default, stops one statement that runs longer than the limit.
Per engine
| Engine | The editor refuses |
|---|---|
| PostgreSQL | Nothing extra. Each editor holds two server connections, the editor's and a read-only observer. |
| MySQL | SET NAMES and other character set changes, RESET, a bare DELIMITER, executable comments, a stored program with a BEGIN … END body that isn't wrapped in DELIMITER $$ … $$, and a SET sql_mode that isn't the last statement. |
| MariaDB | The same as MySQL. A script in ORACLE SQL mode can't be split. |
| SQLite | ATTACH and DETACH, unbound parameters, PRAGMAs outside an allow-list on a locked connection. |
On MySQL and MariaDB, an error inside a transaction leaves the badge at State unknown, which disables Run and Begin until Rollback or Refresh transaction settles it. A plain statement failing in autocommit stays Autocommit.