Grouped by what they affect, applied as you make them.
Value formats
How dates, numbers and binary values are rendered in every grid. These follow the setting rather than the machine's locale, so a value copied out is the value and a screenshot means the same thing on two machines. Binary can be hex, base64 or a size.
Confirmations
Which destructive actions ask before proceeding. The setting is consulted in one place rather than by each command, so a command cannot forget to ask. See schema for what a confirmation contains.
Diagnostics
The log level runs from errors only to full tracing. At the detailed levels the text of your queries is written to disk, and the panel says so beside the setting rather than in a manual, because a query can carry customer data and a log folder is not where you meant to put it.
Raise it while reproducing something, lower it afterwards.
The log folder opens from the panel. Telling somebody a path and asking them to find it saves half the correspondence on an issue; opening it saves the other half. Nothing is sent anywhere.
Where things live
| What | Where |
|---|---|
| Settings | A per-user application data folder, shown in the panel |
| Query history | A .witdb of Studio's own, beside the settings |
| Saved connections | Beside the settings |
| Logs | Their own folder, shown in Diagnostics |
Resetting settings restores the defaults and leaves saved connections alone, which is what you want when something is misconfigured and you would rather not set up every database again.
Languages
English and Russian. Changing it takes effect immediately, including on windows already open. The status bar keeps its last message in the previous language until the next one replaces it.
Updates
Studio checks whether a newer release exists and tells you. It downloads nothing and runs nothing, and the dialog opens the release page. Pre-releases are never offered.
Skipping a version is per version rather than for good: skipping 3.1.0 does not stop you hearing about 3.2.0. Turning the check off entirely is a setting, which is the honest way to say never.
About
The About window carries the Studio version, the engine version it is built against and the platform, laid out ready to paste into an issue. That block plus the log is usually everything needed to say what happened.
The keyboard
Ctrl+? opens the reference, which has a search over it because people arrive from both ends:
"what does Ctrl+R do" and "how do I refresh".
Each row says where a shortcut works, which is the difference between "it does nothing" and "it does nothing here".
Anywhere in the window
| Key | Does |
|---|---|
Ctrl+K |
Command palette |
Ctrl+N |
New database |
Ctrl+O |
Open a database |
Ctrl+R |
Refresh the schema |
Ctrl+T |
New query tab |
Ctrl+Shift+T |
Reopen the last closed tab |
Ctrl+W |
Close the tab |
Ctrl+S |
Save the query |
Ctrl+Shift+S |
Save as |
Ctrl+B |
Hide or show the object tree |
Ctrl+? |
This reference |
Ctrl+N creates a database rather than opening a query tab, which is what every other application
means by it. The query tab is Ctrl+T.
While a query tab is in front
| Key | Does |
|---|---|
F5 |
Run the statement under the cursor |
Ctrl+Shift+F5 |
Run the whole script |
Ctrl+Return |
Run the selection |
Ctrl+Shift+F |
Format the statement |
Escape |
Stop what is running |
Ctrl+F |
Find |
Ctrl+H |
Replace |
F3 / Shift+F3 |
Next, previous |
In a result grid
| Key | Does |
|---|---|
Ctrl+C |
Copy the selected rows |
In the object tree
| Key | Does |
|---|---|
F2 |
Rename |
F4 |
Structure |
Delete |
Drop |
| Letters | Walk the selection to the first matching node |
On macOS the reference shows ⌘ where these show Ctrl, since that is the key you press.
Why this list can be trusted
The map is data, and it is checked against the application in both directions by its tests: every gesture listed has to be bound somewhere that really handles it, and every binding declared in the markup has to be listed.
A help window that quietly disagrees with the keys is worse than no help window, because it is the one place somebody goes when a key did not work.
Reassigning shortcuts is deliberately absent, and the window says why: the gestures are declared in the application rather than read from this list, so a box that accepted a new key would change nothing.
Where to go next
- Query editor, what most of these keys do
- Explorer, the keys the tree owns
- Schema, what the confirmations contain