User guide
Connecting
Open File → New Connection… (⇧⌘N) or the Connection Manager (⇧⌘C).
- Pick the database type, then fill in host, port, user, password and database. For SQLite and Access, choose the file.
- Paste a connection string (URL, JDBC, ADO.NET, libpq or Oracle EZConnect style) into the box at the top of the dialog and the fields fill in.
- SSL tab: choose how the connection is encrypted. Remote servers default to verify full, which checks the server's certificate and name. The badge in the dialog and the connection list shows what you will actually get.
- SSH tab: connect through a jump host with a password or a key. The first time you connect, you confirm the host's fingerprint; later changes are refused.
- Read-only: tick it for a connection you must not change. The database itself enforces it where possible.
- Production: tick it for live systems. The window shows a red banner, and anything that changes data asks first; drops and unfiltered deletes ask you to type the database name.
- Color and group help tell connections apart.
- The manager can search, group, duplicate and import connections (including from a SQLPro Studio export).
Writing queries
- Run with ⌘↩ (the statement at the cursor, or the selection) and Run All with ⇧⌘↩. Cancel with ⌘.
- Several statements run in order; results and messages appear in the panel below. Switch between them with the tabs there or ⌥⌘M.
- Completion suggests tables, columns, keywords and snippets. ⇧⌘F formats the query.
- History (⇧⌘H) keeps what you ran; Favorites (⇧⌘B) keeps what you saved on purpose.
- Tabs and unsaved SQL are restored when you reopen the app. Save (⌘S) writes the query to a
.sqlfile.
Parameters, plans and procedures
- Parameters: write
:id,@id(SQL Server),$1(PostgreSQL) or?in a query and DB Studio Pro asks for the values when you run it. Values go in as quoted text or numbers; the history keeps the query with its markers. - Explain (toolbar, or Query menu) shows how the database plans to run the statement, with bars where the cost is. Hold ⌥ while clicking to run the statement and measure it (only for statements that read).
- Execute… on a stored procedure or function (right-click it in the sidebar) opens a form for its parameters and runs the call in a new tab.
- Database picker (toolbar): points this tab at another database on the same server. The tab gets its own session.
Administration and moving data
- Server Activity… (Query menu) shows running sessions and can cancel a query or end a session (PostgreSQL, MySQL, SQL Server).
- Users and Roles opens a list of accounts as a query result, which you can sort, filter and export.
- Show Diagram… draws the tables of a schema and the foreign keys between them.
- Compare Schemas… compares two connections and writes the script that makes the second match the first. Review the script before running it: it can drop columns.
- Export Database as SQL… saves a schema or database as a script (structure and, optionally, rows). To restore, open the file in a query tab and run it.
- Import reads CSV, TSV, JSON and NDJSON files.
Transactions and sessions
By default every tab shares one connection to the database. Own session (toolbar, or Query menu) gives a tab a connection of its own, so a long query or a transaction doesn't affect other tabs. Begin starts a transaction on the tab's own session; the toolbar then shows how many statements are uncommitted, with Commit and Rollback. Closing the tab or quitting the app with a transaction open asks first, because it would be rolled back.
If the connection drops (a VPN change, a server restart), DB Studio Pro reconnects by itself. A query that only reads is simply run again; a statement that changes data is reported as possibly not run, so you can check before repeating it. Turn this off in Settings.
Working with results
- Click a cell to select; double-click to edit when the result comes from one table with a primary key. Edits are staged (shown in color) until you Apply; Preview shows the exact SQL first. If the app closes before you apply them, they come back as SQL in a "Recovered edits" tab.
- Right-click for copy options (plain, with headers, or as CSV, JSON, Markdown), filtering, and opening a referenced row through a foreign key.
- Results stop at the row limit in Settings; Load next N rows under the grid appends the next page (for a single SELECT).
- Export Results… (⇧⌘E) writes CSV, JSON, SQL and other formats. Large exports stream to disk.
- Import loads CSV and similar files into a table, with a column mapping step.
Browsing and designing
The sidebar lists tables and views; click one to open its data. Structure shows columns, indexes, foreign keys and triggers. The Table Designer creates and alters tables, and shows the SQL it will run before it runs it.
Keyboard and screen readers
Everything can be done from the keyboard. In the sidebar tree, the arrow keys move and open or close folders, Return opens, and the Menu key (or Shift+F10) opens the context menu. Tabs move with the left and right arrows. In the results grid, the arrow keys move between cells. Dialogs keep Tab inside themselves and return focus when they close.
Keyboard reference
| Action | Shortcut |
|---|---|
| New query tab / close tab | ⌘T / ⌘W |
| Open / Save / Save As | ⌘O / ⌘S / ⇧⌘S |
| Run / Run All / Cancel | ⌘↩ / ⇧⌘↩ / ⌘. |
| Format query | ⇧⌘F |
| Find / Replace | ⌘F / ⌥⌘F |
| Go to line | ⌘L |
| Comment / uncomment | ⌘/ |
| Indent / outdent | ⌘] / ⌘[ |
| Upper / lower case | ⌥⌘U / ⌥⌘L |
| History / Favorites / Add favorite | ⇧⌘H / ⇧⌘B / ⇧⌘D |
| Export results | ⇧⌘E |
| Toggle sidebar / results / messages | ⌥⌘S / ⌥⌘R / ⌥⌘M |
| Search objects | ⇧⌘O |
| Connection Manager / New connection | ⇧⌘C / ⇧⌘N |
| Settings | ⌘, |
| Font size | ⌘+ / ⌘- |
Privacy and security settings
Settings → Security turns on the app lock (password, optional Touch ID, lock after idle time). It also lists the SSH hosts you have trusted. Settings → General controls query history (keep, until quit, or never) and whether copied data is cleared from the clipboard. Exported connection files only include passwords inside a file encrypted with a passphrase you choose.
SSH tunnels support password, key and SSH agent login (including 1Password and Secretive), jump hosts, and filling the form from a host in ~/.ssh/config.
Where things are stored
Everything is on your Mac. Passwords are in the macOS Keychain-backed secure store. Help → Show Logs in Finder opens the log folder. See the privacy policy.