SQLvanta Documentation
Everything you need to get productive with SQLvanta — from first connection to advanced schema tools.
Installation
SQLvanta is distributed as a portable app — no installer required. Download the archive for your platform from the Download page, extract it, and run the binary.
Windows
Extract sqlvanta-windows-x64-x.x.x.zip → run sqlvanta.exe
macOS
Unzip → drag sqlvanta.app to /Applications Right-click → Open on first launch (unsigned build)
Linux
tar -xzf sqlvanta-linux-x64-x.x.x.tar.gz -C ~/apps/sqlvanta/ ~/apps/sqlvanta/sqlvanta
First Connection
- Launch SQLvanta. The Connection Manager opens automatically.
- Click + to create a new connection.
- Fill in Host, Port (default
3306), Username, and Password. - Click Test Connection to verify. Latency is shown on success.
- Click Save, then Open to enter the workspace.
Workspace Layout
The workspace is a three-column IDE layout:
- Left sidebar — Object Browser: databases, tables, views, routines, triggers, events.
- Centre top — Query Editor with toolbar.
- Centre bottom — Results Panel (6 tabs: Result, Messages, Table Data, Info, History, Explain).
Open multiple query tabs with Ctrl+T. Each tab has isolated editor state and results. Switch tab types via the tab-bar dropdown:
- Ctrl+Alt+D — ER Diagram designer
- Ctrl+E — Schema Explorer
- Ctrl+K — Visual Query Builder
Query Editor
The SQL editor supports keyword autocomplete, formatting, case conversion, and comment toggling.
Running queries
Press F5, F9, or Ctrl+Enter. Results appear immediately in the Result tab. The active database can be changed from the toolbar dropdown.
Autocomplete
Type 2+ letters to see a live-filtered keyword popup. Use ↑/↓ to navigate, Tab or Enter to insert, Esc to dismiss.
Formatting
Press F12 to uppercase all SQL keywords in the editor. Use Ctrl+Shift+U / Ctrl+Shift+L for full uppercase / lowercase.
Results Grid
SELECT results appear in a high-performance virtual grid. Up to 1 000 rows by default (configurable in Settings).
Edit mode
Click Edit in the toolbar. Change cell values directly. When you click Save, SQLvanta generates UPDATE … WHERE pk = ? LIMIT 1 for each changed row.
Export
Click CSV to export the full result to your Downloads folder. Right-click any row for Copy as INSERT or Copy as UPDATE.
Table Data Browser
The Table Data tab (Result panel tab 3) lets you browse any table without writing SQL. Double-click a table in the Object Browser to auto-load it.
Date picker
Click any DATE, DATETIME, or TIMESTAMP cell to open a calendar picker.
FK row picker
Click a foreign-key cell to open a searchable dialog showing the referenced table. Select a row to fill the value.
CSV import
Click Import CSV in the toolbar. Paste CSV text, optionally mark the first row as header, preview 5 rows, then click Import to INSERT all rows.
ER Diagram Designer
Open with Ctrl+Alt+D or from the tab-bar menu. The canvas shows all tables in the selected database as draggable cards with columns and FK arrows.
- Drag table cards to organise the layout.
- Scroll to zoom, middle-drag the canvas to pan.
- Use the sidebar to show/hide individual tables.
- Cross-database FK tables auto-load with
db.tableheaders. - Click Export PNG to save a high-resolution image.
Schema Explorer
Open with Ctrl+E. A dedicated tab with a searchable table list and five detail views per table.
- Columns — full type, PK/FK/UQ badges, nullable indicator, FK nav links.
- Relationships — outgoing and incoming foreign keys as clickable cards.
- SQL Preview —
SHOW CREATE TABLEoutput with copy button. - Constraints — PK, FK, and UNIQUE constraints with column lists.
Query EXPLAIN Visualizer
Press Ctrl+Shift+E or click the Explain button in the editor toolbar. SQLvanta runs EXPLAIN on the current query and shows the result in tab 6 with:
- Type badge — colour-coded: ALL (red) → index → range → ref → eq_ref → const (blue).
- Rows bar — relative bar chart showing estimated rows scanned.
- Key column — highlighted in amber when an index is used.
- Extra — warnings in orange for
Using filesortandUsing temporary.
ALTER TABLE UI
Right-click any table in the Object Browser → Alter Table. A dialog with four tabs:
- Columns — list with Modify, Rename, and Drop buttons per column.
- Add Column — name, type (with common-types picker), nullable, default, position.
- Modify Column — change type and nullability of an existing column.
- Rename Column — change a column name using
CHANGE COLUMN.
Every operation shows a live SQL preview before execution. Click Copy SQL to use it in a migration script.
Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| Execute query | F5 / F9 / Ctrl+Enter |
| Explain query | Ctrl+Shift+E |
| Format SQL keywords | F12 |
| Uppercase selection | Ctrl+Shift+U |
| Lowercase selection | Ctrl+Shift+L |
| Comment selection | Ctrl+Shift+C |
| Remove comment | Ctrl+Shift+R |
| New query tab | Ctrl+T |
| Close query tab | Ctrl+W |
| Open ER Diagram | Ctrl+Alt+D |
| Open Schema Explorer | Ctrl+E |
| Open Query Builder | Ctrl+K |
| Connection Manager | Ctrl+Shift+C |
| Settings | Ctrl+, |
| Autocomplete next | Tab |
| Dismiss autocomplete | Esc |
Frequently Asked Questions
Is SQLvanta free?
Yes. SQLvanta is 100% free and open-source under the MIT licence. No subscriptions, no paid tiers, no telemetry.
Which MySQL versions are supported?
MySQL 5.7, 8.0, and 8.4, plus MariaDB 10.4+. The caching_sha2_password plugin used by MySQL 8 is fully supported.
How are passwords stored?
Exclusively in the OS keychain — DPAPI on Windows, Keychain on macOS, libsecret on Linux. The SQLite file never contains credentials.
Can I connect to a remote MySQL server?
Yes. Enter the remote host IP/domain, port, and credentials in the Connection Manager. Ensure port 3306 is accessible from your machine.
How do I report a bug or request a feature?
Open an issue on GitHub Issues. Pull requests are welcome too.
Developer Architecture
SQLvanta follows Clean Architecture with feature-based modules and Riverpod 2.x state management.
lib/
├── app/ Router, theme, root widget
├── core/ Shared utils, widgets, constants
├── database/ Drift SQLite (connections, history, preferences)
├── mysql/ Pure-Dart MySQL layer (factory, executor, schema fetcher)
└── features/
├── connections/ Connection CRUD + secure storage
├── workspace/ IDE shell — sessions and tabs
├── object_browser/ Lazy schema tree
├── query_editor/ SQL editor + execution + history
├── results_grid/ PlutoGrid results + explain + import
├── schema_designer/ ER diagram canvas
├── schema_explorer/ Interactive schema deep-dive
├── schema_alteration/ ALTER TABLE UI
└── settings/ Preferences + update checker
To build from source: github.com/senthilnasa/sqlvanta