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

  1. Launch SQLvanta. The Connection Manager opens automatically.
  2. Click + to create a new connection.
  3. Fill in Host, Port (default 3306), Username, and Password.
  4. Click Test Connection to verify. Latency is shown on success.
  5. Click Save, then Open to enter the workspace.
Security: Passwords are stored in the OS keychain (DPAPI / Keychain / libsecret). The local SQLite file never contains plain-text credentials.

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.table headers.
  • 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 PreviewSHOW CREATE TABLE output 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 filesort and Using 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

ActionShortcut
Execute queryF5 / F9 / Ctrl+Enter
Explain queryCtrl+Shift+E
Format SQL keywordsF12
Uppercase selectionCtrl+Shift+U
Lowercase selectionCtrl+Shift+L
Comment selectionCtrl+Shift+C
Remove commentCtrl+Shift+R
New query tabCtrl+T
Close query tabCtrl+W
Open ER DiagramCtrl+Alt+D
Open Schema ExplorerCtrl+E
Open Query BuilderCtrl+K
Connection ManagerCtrl+Shift+C
SettingsCtrl+,
Autocomplete nextTab
Dismiss autocompleteEsc

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