Version History - 2016

SQLyog 12.3.3 (December 2016)

  • Bug Fixes:
    --Fixed an issue where Import External Data -jobs failed to authenticate SMTP.
    --The sja.log would record syntax errors on recent servers if  Scheduled Backup was running with ‘Flush Master’ option. The generated backup file was OK. ‘Flush Master’ was deprecated in MySQL 5.6 and replaced with ‘Reset Master’. We now use ‘Reset Master’ with such servers.
    --In email settings of Import External Data wizard it was possible to leave the subject empty.
    --When re-ordering columns, an ON UPDATE -clause could be lost in specific cases.
    --Fixed cases where index-level comments were not saved and copied.
    --In ALTER TABLE  dialog  .. indexes tab, the ‘index type’ drop-down combo did not list a plain KEY as an option. It does now and is set  as  default. Before this, the user was supposed to leave the field empty, which was not intuitive.
  • Miscellaneous:
    --HISTORY tab will now record implicit commits.
    --In SJA email notifications a TIMESTAMP may now be used with the subject. Also, the formatting of SJA mails was improved for better readability.

SQLyog 12.3.2 (November 2016)

  • Bug Fixes:
    --If an INIT_CONNECT setting in server configuration specified SET AUTOCOMMIT = 0 and global AUTOCOMMIT was 1 (or non-existent as in MySQL 4.1 and 5.0), the ‘transactions’ menu in SQLyog would incorrectly display AUTOCOMMIT as 1 after connection. 
    --Same code change as above also fixes a crash that could occur with 4.1 servers. 
    --Transactions support would fail to initialize with servers running global ANSI mode. SQLyog will not work in ANSI mode but connection and initialization should work, so that user as the first step may specify a supported session sql_mode (from the editor or from ‘advanced’ tab in connection settings).
  • Miscellaneous:
    --Transactions will not work with  HTTP-tunnel and any transactional command executed in an HTTP-session will now pop-up a warning that every statement runs in its own transaction.

SQLyog 12.3.1 (November 2016)

This release fixes a rare crash as well as a regression bug introduced in 12.3.0.

  • Bug Fixes:
    --12.3.0 introduced a slowness when displaying the saved connections list with a large no. (100+) of saved connections. This is fixed now. 
    --Fixed a rare crash occurring sometimes when typing in the editor inside an invalid query longer than 128 characters. Auto-complete was at fault.

SQLyog 12.3.0 (October 2016)

This release introduces a new major feature – GUI transaction support – as well as some minor features and bug fixes.

  • Features:
    --GUI transactions support. This new feature is available in Enterprise and Ultimate editions. Also please see note below. 
    --Added a tooltip on column headers in Data tab informing about column name, column type and length. In Result tab the tooltip will display column name only, as the result returned by MySQL does not have information of storage type details. 
    --Added GUI support for index-level comments in CREATE/ALTER TABLE.
  • Bug Fixes:
    --Fixed an issue where GUI could ‘hang’ when executing queries with very large subqueries. 
    --Fixed an issue with the confirmation prompt in User Manager. It could appear when it should not and vice versa. 
    --Fixed a  color  rendering bug in Connection Manager. 
    --Multiple empty lines were made one when creating/altering a stored program. 
    -- Duplicate  table was not copying Virtual Columns of the table. 
    --Fixed a crash when reverting changes made to a newly defined table. Only HTTP-tunnel was affected. 
    --Fixed a crash occurring sometimes when selecting a table and inserting a DELETE statement into the editor from table menu .. Paste SQL Statement. 
    --Row-count for a table in INFO tab displayed as a number of “K”, “M” or G” rows using  base-2  number system. Using this number system makes no sense in this context.
  • Miscellaneous:
    --Copy DB to a different host now identifies a DB on a target named the same as the source DB if such exists on target.

A note about the new GUI transactions support:

The new GUI transactions support adds a new category to the menu with complete support for transactional statements as well as icons/buttons for most common transactional operations: START TRANSACTION, COMMIT and ROLLBACK. This is however not the major achievement here.  This alone would be pretty simple, actually. The major achievement is that the GUI is aware of the current ‘transactional state’ of a session and gives visual feedback to the user about this state – and does this no matter if a transactional statement was executed using the new GUI controls introduced in this release or executed from the editor. Note, however, that it is user’s responsibility to know the ‘transactional capabilities’ of the storage engines used. This new GUI functionality assumes ‘transactional capabilities’ identical to InnoDB for all tables.

SQLyog 12.2.6 (September 2016)

This release fixes two rare crashes and also we have upgraded the (MariaDB) C-connector to  latest  version (2.3.1). Most important this solves an issue when connecting to Amazon RDS using SSL. This was not possible before.

  • Bug Fixes:
    --SQLyog was not able to connect to RDS instances using SSL encryption. Attempting to do so returned the error “Failed to connect to MySQL: SSL connection error: certificate verify failed”. 
    --After having a connection open for  very  long time, SQLyog could crash when closing this connection. 
    --Corrupted connection information in the ‘session restore’-database could cause a crash. We had one reproducible report of this, but please note that there is no indication that SQLyog itself caused the corruption. It may be due to a hardware error, for instance. But in any  case  we should not crash.

SQLyog 12.2.5 (August 2016)

  • Features:
    --Added basic support for the JSON datatype as of MySQL 5.7.8+ and MySQL Cluster 7.5.2+. The datatype is now available in the CREATE/ALTER TABLE  dialog  and JSON data will open in the BLOB-viewer. In the BLOB-viewer we have added validation that content is valid JSON.  Also  JSON-related keywords and functions are recognized in syntax highlighting and autocomplete. Also please see note at the bottom. 
    --SQLyog GUI now supports Foreign Key constraints between NDB tables for MySQL Cluster 7.3+. 
    --It is now possible to filter the users based on a string in the drop-down list in the ‘User Manager’. It is similar to filtering the tables, databases and connections, and an improvement to the filter in previous versions.
  • Bug Fixes:
    --In “Backup Database as SQL Dump”  when selecting ‘Data Only’ option, it was possible to select objects not containing data. This case is now handled more intuitive. 
    --At the bottom of the Object Browser there is a notification area (used for various purposes including security alerts, marketing campaigns etc). If SQLyog – for any reason – could not access our server checking for available notifications, the message “Internet access is restricted from this computer” would appear. It disturbed some users and does not display now. 
    --MySQL allows the columns with TIMESTAMP and  DATETYPE  datatypes to set the value to NULL, even if the column is defined with ’NOT NULL’. When set to NULL, MySQL will replace NULL with the CURRENT_TIMESTAMP value. Therefore it is now possible to select the option ‘Set To NULL’ for such columns by  right clicking  on the cell in the ‘Table Data’. 
    --When SQLyog restored the session after closing and reopening, editor tabs sometimes displayed editor line numbers only partially or otherwise incorrect as long as the tab did not have focus. This is now fixed. 
    --When pasting SQL templates for a table (from menu .. edit .. Insert Templates), INSERT and UPDATE query listed the virtual/generated columns in the template. This has now been removed from the templates. 
    --When deleting a connection tab the focus was not handled correctly in some cases, where it would highlight one connection tab and display the contents of another connection tab. 
    --CREATE/ALTER TABLE omitted a SPACE-character before the comment on a TIMESTAMP ON UPDATE CURRENT_TIMESTAMP column if a comment was specified, and the statement would fail.

A note about JSON:

The JSON support in recent MySQL versions is an interesting and important development. However, we don’t think it has fully matured yet.  Also  MySQL and MariaDB are very non-uniform in this. MariaDB does not support the JSON datatype currently (I understand it is planned for MariaDB 10.2, but implementation details may end up somewhat different than in Oracle/MySQL). With this  release  we have added basic functionalities for working with JSON data. The future will undoubtedly bring more (for instance GUI controls for JSON handling, conversion and formatting based on server-side functions available and/or client-side functionalities). But we have chosen a ‘conservative approach’ with this release, as we think it would be premature to do more at the moment. However, you are welcome to contact us or just comment  in  this blog, if there is something that is a ‘must have’ for you here.

SQLyog 12.2.4 (May 2016)

  • Bug Fixes:                                                                                                                                                                                                    --Fixed a regression bug introduced in 12.2.3, that could have the result that various data  dialogs  displayed truncated or empty. Affected were “table diagnostics” and in some cases also Info, Data and Result tabs in text mode.

SQLyog 12.2.3 (May 2016)

  • Features:   
    --User Manager filter: when some characters are typed for  user  in User Manager first match with same starting characters will be selected.
  • Bug Fixes:
    --“Ignore Definer” did not work if “Drop Table if exist” and “Ignore Definer” both were ticked in cases where only procedures and/or functions were copied to another database. 
    --The result of a multiline string in text mode displayed empty in  case  where the string started with a line break. 
    --For “wide” BIT(n) types “0″-bits (even significant ones) could be truncated away due to a bug in a string conversion algorithm.
  • Miscellaneous:
    --The Plink executable shipped with the  64 bit  installer is now a 64 bit binary. Before it was 32 bit. 
    --The width of the dividers between the various panes of the SQLyog main window has been increased for better operability of resizing. This will be  useful  with touchscreens in particular.
SQLyog 12.2.2 (May 2016)
  • Features:
    -- The ‘date picker’ now has a GUI control to insert current date.
    --When running multiple statements in the editor and an error  occured , SQLyog would continue to next statement. There is now an option to ‘halt on error’ in such cases.
  • Bug Fixes:                                                                                                                                                                                                    --The `sys` database of MySQL 5.7 was erroneously backed up when choosing ‘all databases’ in the Scheduled Backup tool.
    -- Tablel -level comments were truncated at 490 characters. 
    --The ‘date picker ‘  calender  could display distorted in DATA tab in some cases.
  • Miscellaneous:                                                                                                                                                                                             --MySQL username max-length in SQLyog connection settings has been increased from 16 to 32 characters, as MySQL 5.7 now allows for.

SQLyog 12.2.1 (February 2016)

  • Bug Fixes:                                                                                                                                                                                                   --Updates from RESULT tab could fail with MySQL 4.1 servers. The recent code changes in order to support MySQL 5.7 Virtual Columns overlooked that there is no Information_Schema database in MySQL 4.1 and a required condition could not be verified due to this.
    --In rare cases “copy database to a different host” option could generate incorrect statements and copying would fail with a ‘columns count mismatch’ error.  Also  this was introduced with code changes in order to support Virtual Columns in MySQL. Virtual columns did not need to be present in  source  for the error to occur. 
    --Fixed a crash when copying table data to  clipboard .
  • Miscellaneous:                                                                                                                                                                                             --Installer packages are now signed with a SHA2-hashed (and not SHA1 as before) certificate. Since recently Internet Explorer 11 has issued a security warning when installing from installer packages using a SHA1-hash with a build timestamp from Jan  1st  2016 or later. We were not aware of this policy-change by Microsoft when releasing SQLyog 11.1.9 and 12.2.0.

SQLyog 12.2.0 (February 2016)

  • Bug Fixes:                                                                                                                                                                                                    --Virtual Columns of MySQL 5.7 were not handled properly in ‘copy database to  other host ’.
    --12.1.9 introduced a sluggishness when moving around the data GRID. In some  cases  it could be so bad that the program seemed to “hang” completely.
  • Miscellaneous:
    --Fixed inconsistent versioning. Earlier we could sometimes use  format  like “11.19″ and sometimes “12.1.9″. We now consistently use the latter – like “12.2.0″ with this release.

SQLyog 12.19 (February 2016)

  • Features:
    --Virtual Columns support for MySQL 5.7 onwards (Virtual Columns with MariaDB were already supported). Please see note below for details. 
    --SSL and SSH-tunnel are now not mutually exclusive.  A SSL  connection may now be established through an SSH-tunnel.  This is in particular useful with various sorts of “private clouds” where connection to the cloud requires SSH and privacy of the cloud  is  enforced by using SSL for internal communication in the cloud. 
    --Multiple files (.sql, .schemaxml, .queryxml) may now be opened in one operation in main editor window.
  • Bug Fixes:
    --When importing from some (not commonly used) external data sources using a WHERE-clause  a SPACE  was missing before the “WHERE” keyword causing an error. This is actually an issue with ODBC-drivers affected, but this release has a workaround. 
    --In CREATE/ALTER TABLE  dialog  a default value could be specified for BLOB/TEXT columns. The server does not permit this and doing so will result in a server error. Now the GUI prevents it. 
    --Fixed minor bugs with the Virtual Columns support for MariaDB.
  • Miscellaneous:
    --SQLite has been upgraded to version 3.10.0. This results in performance improvements (in autocomplete in particular).

An additional note about Virtual Columns support:

There is a very important difference between Virtual Columns in MariaDB and MySQL 5.7 as  described   here . With the MySQL implementation from 5.7.8 both SQLyog backup/restore, Data Sync and ‘copy to other’ would fail with a server error if tables contained virtual Columns (it worked with MariaDB). The most serious issue was, of course, that backups from tables with Virtual Columns could not be restored – simply because when you found out, it may have been too late already.

With this release all DML statements generated by SQLyog have been modified to consider Virtual Columns where needed – and also will consider the  particularites  of MariaDB and MySQL implementations.   However  sync tools will not work with tables with Virtual Columns between MySQL and MariaDB as the syntax of the DDL differs.

We believe that SQLyog - except for ‘ mysqldump ’ from 5.7.9 –  is the first tool/client that will work with Virtual Columns of both MariaDB and MySQL.