Download HeidiSQL v12.20, released on 22 Jun 2026

Donate

Installation notes

Latest changes and nightly builds

Latest automatically compiled main executable and installers for HeidiSQL. Just download and overwrite your existing C:\Program Files\HeidiSQL\heidisql.exe. Be aware that these builds are not official releases and therefore probably have more bugs, possibly serious ones.

Classic Windows version v13 Preview, Current Linux and macOS versions
Ansgar Becker feat: show table columns in tree, as child nodes

Refs #2069

fc222fb: 17 Jul 2026 14:39 v12.20.0.733464bit build Installer

Ansgar Becker fix: prevent SQL error "Property 'MS_Description' already exists"

Fire either sp_addextendedproperty or sp_updateextendedproperty for setting a MS SQL column comment

Refs #2552

0014f1b: 17 Jul 2026 08:31 v12.20.0.7333

Ansgar Becker feat: auto-adjust width of various combo boxes

refs #2551

3fca286: 16 Jul 2026 07:21 v12.20.0.7332

Ansgar Becker Update MariaDB Connector/C to v3.4.9. See https://mariadb.com/docs/release-notes/connectors/c/3.4/3.4.9

8644cd7: 07 Jul 2026 20:25 v12.20.0.7331

Ansgar Becker fix: do not paint size bar in nodes of level 2, and do not show "-" text there neither

Refs #1500

5441379: 06 Jul 2026 16:09 v12.20.0.7330

Ansgar Becker feat: query size of all indexes in one query

Refs #1500

499ee41: 05 Jul 2026 15:15 v12.20.0.7329

Ansgar Becker feat: display size of each index and paint a color bar behind it

Refs #1500

f1d0eb6: 05 Jul 2026 12:24 v12.20.0.7328

Ansgar Becker fix: EXPLAIN <query> actions either disabled or non-working for PostgreSQL and SQLite

Refs #2540

a434066: 03 Jul 2026 10:47 v12.20.0.7327

Ansgar Becker fix: hanging in a loop over result nodes by right-click on query result

Refs #2539

1cbdf77: 03 Jul 2026 09:10 v12.20.0.7326

Ansgar Becker refactor: prefer Delphi friendly SysUtils.PathDelim over hard-coded backslash

2e290f1: 29 Jun 2026 16:06 v12.20.0.7325

Ansgar Becker fix: use default library of connection when the one from a stored session contains an invalid path/file

Refs #2501

6878578: 29 Jun 2026 14:23 v12.20.0.7324

Ansgar Becker fix: refresh session tree after import per More > Import settings file

Refs #2532

0aaa1f2: 24 Jun 2026 12:28 v12.20.0.7323

Ansgar Becker fix: CAST(x AS CHAR) not supported by MySQL below v4.0.2

Refs #2531

c2362f4: 23 Jun 2026 21:08 v12.20.0.7322

Ansgar Becker fix: prepend database name to the trigger name at the correct position, when newer MariaDB versions use IF NOT EXISTS

Refs #2528

179a484: 23 Jun 2026 20:13 v12.20.0.7321

Ansgar Becker Bump version for v12.20 release

9cb9c93: 22 Jun 2026 17:01 v12.20.0.732064bit build Installer

Ansgar Becker feat: support some keywords like CURRENT_TIMESTAMP in SQLite default value drop-down

Refs #2517

37ca309: 22 Jun 2026 16:53 v12.19.0.7319

Ansgar Becker fix: expect "IF NOT EXISTS" clause in trigger definition

Refs #2528

fae4c58: 22 Jun 2026 13:51 v12.19.0.7318

Ansgar Becker fix: reveal procedures and function in MySQL which are stored with correct case in mysql.proc

https://www.heidisql.com/forum.php?t=45182

Refs #2506

7531d7a: 22 Jun 2026 13:14 v12.19.0.7317

Ansgar Becker chore: align hostname in Transifex config file with the one in my ~/.transifexrc

7b1d106: 20 Jun 2026 13:56 v12.19.0.7316

Ansgar Becker chore: update copyright year

3ce17ff: 20 Jun 2026 13:55 v12.19.0.7315

twinn1013: fix: crash when cancelling session manager while a session rename is active

Two independent crashes on macOS were hidden behind this repro, since
cancelling the session manager at startup also exits the application:

1. The session manager starts an inline rename right after creating a
new session. When the form was closed via Cancel, the edit link's
queued async EndEditNode call fired after the tree was already
destroyed, and its focus restoration ran into
"[TCustomForm.SetFocus] connform:Tconnform Can not focus".
Remove pending async edit calls when an editor link is destroyed,
cancel a pending inline rename before the form closes, and let
TrySetFocus test CanSetFocus, which - unlike CanFocus - also checks
the parent form itself, so it does not raise in the first place.

2. On shutdown, TSynBaseCompletionForm.Destroy (SynEdit) first frees its
SizeDrag panel and then destroys the window handle. The Cocoa
widgetset queries Focused during DestroyHandle, and SynEdit's Focused
override dereferences the freed SizeDrag, raising
"EObjectCheck: Object reference is Nil" on every macOS shutdown.
Work around it by destroying the completion form's handle in
FormDestroy while the form is still intact.

Fixes issue 2433

1da8683: 14 Jul 2026 04:31 Builds

Ansgar Becker: fix: prevent crashes from SetFocus on various controls

Refs #2433

bf46821: 17 Jul 2026 15:39

Ansgar Becker: fix: data grid header keeps showing previous table's columns on macOS

Most changes done by @twinn1013

Refs #2549

255695d: 17 Jul 2026 15:08

Ansgar Becker: feat: show index icons on columns in tree, and the data type text color

Also fixes dragging tree nodes to an editor, which needs DragMode=dmVCL in the source control, like I did for other places in 4fd646c829269cf625af84212e850e7ac2dac437

Refs #2069

e6e90aa: 17 Jul 2026 10:17

Ansgar Becker: fix: prevent SQL error "Property 'MS_Description' already exists"

Fire either sp_addextendedproperty or sp_updateextendedproperty for setting a MS SQL column comment

Refs #2552

ac50b73: 16 Jul 2026 21:10

Ansgar Becker: fix: enhance anchors on some of the table editors controls

refs #2551

bfebd9e: 15 Jul 2026 17:28

Ansgar Becker: feat: auto-adjust width of various combo boxes

refs #2551

ca9b748: 15 Jul 2026 17:26

Ansgar Becker: fix: bad width of collation combo box

refs #2551

a90f73c: 15 Jul 2026 15:50

Ansgar Becker: fix: File > "New window" does nothing on macOS

Most code taken from https://github.com/twinn1013/HeidiSQL/commit/4f4adf7e5cf3c803f384204c319e739d8b54d039

Refs #2384

0583a4e: 13 Jul 2026 15:10

Ansgar Becker: fix: still wrong proposal background color in dark mode

Refs #2534

e62c47f: 13 Jul 2026 11:35

Ansgar Becker: fix(ui): exchange icon for "column" and its variants for add, delete, edit

Refs #2069

08558f9: 10 Jul 2026 15:40

Ansgar Becker: feat: show table columns in tree, as child nodes

Refs #2069

0e20e70: 10 Jul 2026 15:04

Ansgar Becker: cleanup: tbsSeparator TToolButton's now seem to have a default width of 8px (was 6px at some point), and TStatusBar's height now has a default height of 23px (was 28px)

660c82d: 10 Jul 2026 15:00

Ansgar Becker: fix: wrong proposal background color in dark mode

Refs #2534

eec978c: 10 Jul 2026 12:12

Ansgar Becker: fix: crash when opening a table, due to using the TCanvas member of a not yet visible form or frame

Refs #2546

bfe29c1: 10 Jul 2026 12:05

Ansgar Becker: fix: give the trees and grids more height for the header

Refs #2543

568098a: 10 Jul 2026 11:35

Ansgar Becker: fix: widen many TSpinEditEx instances to either 80px or align them with neighbor controls

Refs #2544

5964be6: 08 Jul 2026 16:24

Ansgar Becker: fix: some trees have their own OnContextMenu logic set at design time, do not overwrite

Refs #2271

7c2870a: 08 Jul 2026 15:25

Ansgar Becker: fix: work around unused Header.PopupMenu menu on Linux when a tree has a PopupMenu

Refs #2271

2030a91: 08 Jul 2026 15:13

Ansgar Becker: Update MariaDB Connector/C to v3.4.9. See https://mariadb.com/docs/release-notes/connectors/c/3.4/3.4.9

ba40947: 07 Jul 2026 20:22