This is a maintenance release with quite some additional new features and enhancements.
Grab it from the download page
- New features:
- Introduce GUI font preferences setting, so the user can customize the font of all dialogs and forms
- Add a "clear" button to the both db+table filter textboxes.
- Make insertion of node text on double click customizable, per tree style options menu
- Make brace matching color customizable, via Tools > Preferences > SQL.
- Add menu item "Run SQL file", as a complement to "Load SQL files".
- Set font size per Ctrl + mousewheel in any grid view.
- Add new "Options" dropdown button on SQL export dialog, and two new true/false settings: "Add comments" and "Remove auto_increment clauses".
- Support procedures and functions in "Find text on server" dialog.
- Support inline valued functions on MSSQL.
- Make keep-alive-interval customizable in "Advanced" tab on session manager.
- Display UTC date/time in 5th status bar panel.
- Add "SQL DELETEs/INSERTs" to grid export formats.
- Display the version of libpq.dll in the status bar's balloon hint with server details, using PQlibVersion().
- Support wildcard options in "Find text on server" dialog in a new drop down box, to provide a possibility to find exact matches.
- MySQL/MariaDB: Implement support for expired passwords. Show a change-password dialog after the very first query of a connection when it returns "Error 1820: You must SET PASSWORD before executing this statement".
- Support Windows authentication via command line parameter W or winauth.
- Accept SSL session settings as command line parameters. See http://www.heidisql.com/help.php#commandline for details.
- Add some hotkeys for focusing table filter, database tree and main tabs. Also, add a new main menu with these actions, so the user can look up these hotkeys.
- Enhancements:
- Prefetch mass queries fired for each object in a database
- Support MSSQL's XML data type, and do not cast it to VARCHAR in data grid
- Increase size of analyzed text file chunk from 100K to 1M, in DetectEncoding(), so it fails less often to see encoding relevant characters
- Add various missing translation strings
- Detect table and its alias when using UPDATE/INSERT IGNORE
- Display column comments on MSSQL
- Add basic support for MySQL's new JSON data type.
- Add new MySQL internally used date/time data types.
- Internally handle MySQL's native column types in an enumeration, not as constants. See mysql.h.pp in the MySQL server code.
- Add virtual column syntax for MySQL, which seems to differ slightly from the MariaDB implementation.
- User manager: Allow double quotes in SHOW GRANTS output, to support ANSI mode.
- Translate SynEdit shortcut captions.
- Increase width of shortcut tree, so new translations have enough room.
- Update SynEdit component
- Remember size of completion proposal between sessions.
- Rephrase confirmation message for running unsafe queries.
- Do not quote column names when not required in SELECT query for data grid.
- Add some new lines in SQL export, especially when "Add comments" is disabled
- Try to show tooltip when columns in database tree are too narrow to show the full text.
- Format byte numbers so that we never get a thousands separator in it.
- Use a better fitting icon for the browse-file button in SQL export dialog.
- Warn if export output filename contains illegal characters, which TFileStream.Create does not catch for some reason.
- Do not check existence of IS.routines before querying it.
- Remember selected encoding in several file-open-dialogs.
- Use an exact comparison in multi-column filters for some PostgreSQL data types to overcome SQL errors, e.g. UUID, INT etc. Also, prevent other errors by matching the value against a certain regular expression. If it does not match, leave this column away.
- Update all PostgreSQL libraries
- Add splitter on procedure editor.
- Set each procedure parameter on its own line, and remove some tabs.
- Display number of sorted columns on "Sorting" button.
- Display number of selected columns besides available columns on "Columns" button in "Data" tab.
- Add new item "Logging preferences" to context menu in SQL log panel
- Preferences: Add checkbox for "Horizontal scrollbar" in Logging tab.
- Preferences: Give each tab an individual icon, and use flat button style for tabs.
- Display network type in tooltip over server status panel.
- Cosmetics in session manager: Rearrange and resize labels in statistics tab.
- Cosmetics: Make status bar panel for server version a bit wider.
- Update Transifex command line client to 0.12.1.
- Add client plugin for MariaDB's GSSAPI authentication, basically Windows authentication.
- Move some menu items for configuring data grids into a new submenu labelled "Grid view options"
- Create a duplicated menu item there, for "View binary data as text" button from the main toolbar
- Create a new menu item there, for jumping to the "Data" tab in the preferences window
- Add related translation strings
- Move plink.exe path to lpCommandLine parameter instead of passing it as lpApplicationName. This way, a folderless plink.exe call should use the first available one from the path environment.
- Support multiple objects selected in user manager > add object.
- Clear contents of filter boxes when pressing Esc key.
- Support all integer and real data types for displaying as Unix timestamp.
- Support session name in placeholders for filename.
- Bugfixes:
- Non functional bind parameter detection
- Use db.func instead of schema.func when schema is empty, on retrieving MSSQL routine structure
- MSSQL: Fix broken query for altering column comment via table editor
- A yes/no message dialog may also return mrCancel, when the user clicks the X button to close it. Handle this case as if the user clicked "no", when HeidiSQL detects an unsafe query.
- Fix endless loop in retrieval of column comments on MSSQL.
- Fix order in table column parsing, so that collation is expected before a virtual expression
- Fix non-working detection of indexes on PostgreSQL pre-9.0 servers
- Postpone repaint of the data grid to later, after click on a header column with a bad WHERE filter. Fixes a crash in VirtualTree, when handling the click somewhere.
- Fix position of horizontal splitter on second and successive query tabs.
- MSSQL: Set textsize to a large value, so the view editor does not load partial code only.
- Use a reasonable default height for the query editor, to prevent a splitter problem.
- Prevent various problems with alignment of controls.
- Fix duplication of query tab controls, when it comes to aligning the query helpers tree.
- Fix crash when opening completion proposal with only views in a database.
- Ignore surrounding parentheses when detecting table aliases for completion proposal.
- Table designer: Do not allow an empty length/set for data types which require one.
- Slightly increase auto-calculated width of size column in database tree, so it does not use ellipses on wider texts, e.g. "1.023 KiB"
- In SQL dumps, make "SET NAMES utf8mb4" a version conditional statement for the minimum MySQL version supporting that charset.
- Implement TPGQuery.TableName, so exporting grid rows get a table name when needed. E.g. for output format "SQL Inserts".
- Allow tab after double dash comment in SQL highlighter.
- Fix detection of virtual columns without "GENERATED ALWAYS" clause.
- Fix unquoted and uncleaned numeric values in data grid updates and inserts.
- Fix bug in TAdoDBQuery.TableName when multiple queries were executed.
- Use an exact comparison for PostgreSQL's BOOLEAN datatype.
- Fix multi column filter concatenated without OR after linebreak.
- MSSQL: Work around multiple results from a single query, in case of a stored procedure for example.
- Fill SSL command line parameters only if not empty in HeidiSQL session.
- Overcome 4000 character limit in IS.VIEW_DEFINITION.
- Use b'' format only for BIT columns in MySQL only.
- Fix "Database(s)" string split by space characters. Allow semicolon only.
- Fix wrong FLOAT data type mapping between DB.TFieldType and TDBDatatypeIndex, in TAdoDBQuery.Execute.
- Do not complain about empty password when SHOW GRANTS output does not include the IDENTIFIED BY clause on MySQL 5.7.6+.
- Rewind result set for column comments before iterating over it, as it's an inner loop.
- Trim database names when passed as semicolon separated list.
- Use exact text data types instead of their whole category for detecting special binary columns. Fixes unquoted JSON content in SQL exports.
- Fix slow highlighter when TableNames contains several 1000's of strings. Removes limitation to 1000 table names for highlighting.
- Fix crash when showing hint (animation) on grid cells with large text portions.
- Catch exception when clicking "Cancel running operation" and the KILL command cannot be executed.