Ads were blocked - no problem. But keep in mind that developing HeidiSQL, user support and hosting takes time and money. You may want to send a donation instead.

HeidiSQL 12.2 with JSON and XML reformatters, and customizable highlighters

ansgar's profile image ansgar posted 10 months ago in Anouncements Permalink

Get it from the download page

3rd party updates:

  • Update SQLite libraries to v3.39.4 from 2022-09-29

New stuff:

  • Issue #1536: auto-resize height of data grid filter while user types text in it
  • Issue #1691: make timer interval for auto completion proposal configurable, while keeping 500ms as a default value.
  • Allow integers and floats to be entered in hexadecimal format in grids. Basically means they're not wrapped in quotes now. See
  • After restoring query tabs, warn user about tabs which were loading slow
  • Add preference option for adding timestamp to log messages. Helpful for debugging performance issues.
  • Issue #136: use VerySimpleXML v3-beta from to reformat XML in grid cells. Also, auto-disable slow wordwrap in editor if text is > 1M large
  • Issue #1659: create dialog for customizing highlighter colors and style, for use on grid text editor
  • Highlight occurrences of selected text in grid text editor, same as in query editor
  • Issue #1669: turn customize-highlighter button into dropdown button with additional items "Format code once" and "Always format code". Usable for SQL, JSON and XML.

Bugfixes and enhancements:

  • CSV scanner: lowercase name of table and columns, and unify non-word characters to underscore
  • Fix crash when scanning CSV file with more values in data than in header line. Closes #1698
  • Fix trailing linebreak counted to last column name in first CSV line
  • Fix wrong finish message in log result, when doing something different than an export. See
  • Issue #1700: exactify positions of line breaks in auto-filter on data grid, to prevent sporadically too long lines
  • Issue #1616; Fix broken updater code and binaries, by fixing wrong parameter definition of WindowProc and wrong type cast in a SendMessage() call
  • Issue #1616: revert previous modifications on updater binaries, which now do nothing and don't trigger the WM_SHOWWINDOW message
  • Issue #1695: attempt to fix a check for a named session before storing the currently used database name
  • Prefer CopyFile + DeleteFile over MoveFile, in a second place, where the old binary is backup'd. See issue #1616
  • Add log message after finished export, to make it more noticeable the user has control again. See
  • SSH tunnel: process error pipe contents only if std pipe is empty. See
  • Allow hex values to have an odd number of digits. See
  • Issue #1673, #1351 and #1658: use a general approach in TDBQuery.HasFullData for all server types, where we again use Delphi's Length() against a number range of 128..256.
  • Fix text value in popup editor cut to 256 chars, for all modes other than MySQL. Closes #1673
  • Issue #1652: don't add collation clause to a modified or new JSON column
  • Update readme file: add Interbase/Firebird, require Delphi 11.1, code formatting
  • Purge cached columns, indexes etc. and reinitialize table editor, when user presses refresh button. Closes #1628
  • Issue #1669: turn off always-format setting by default
  • Issue #1670: fix text field editing with more than 256 chars on MS SQL
  • Add missing ini entries for CURRENT_TIMESTAMP function. Closes #1666
  • Use empty default host/ip for new SQLite sessions, to avoid running into some out-of-memory issue. Closes #1602
  • Fix previous approach in TDBQuery.HasFullData and StrHasNumChars, which used CharNextW() and stopped at null bytes within binary strings. Again use Length() instead, but let it be longer than GRIDMAXDATA. Closes #1658
  • Issue #1659: remove broken sample text box, activate translation on dialog
  • Issue #1659: fix exception on closing customize dialog, use empty string when converting clNone to and from web color, instead of #ffffff
  • Issue #1656: attempt to give Wine a hint for the right font size, when highlighting selection occurrences
  • Use NULL in new row for column with timestamp expression, to fix a following UPDATE query using an empty string in its WHERE clause. Closes #1645
  • Leave away NULL clause for new column which allows NULLs. Closes #1642



Please login to leave a reply, or register at first.

Ads were blocked - no problem. But keep in mind that developing HeidiSQL, user support and hosting takes time and money. You may want to send a donation instead.