Version History - 2010

SQLyog 8.71 (November 2010)

  • Bug Fixes

    -- In Form View if a BLOB/TEXT column contained specific sequences of non-ASCII characters the button to open the BLOB viewer would not display correctly.
    -- When updating from the RESULT tab and when using HTTP-tunnel identifiers were not `backticked`. For same reason the update would fail with identifiers containing SPACE or other characters requiring `backticks` in the statement. This bug was introduced in 8.7.
    -- ‘Copy Database’ GUI did not display the connection name of the source database.
    -- The fix in 8.7 that autocomplete could sometimes delete the character following cursor position was not complete.

SQLyog 8.7 (November 2010)

  • Features

    -- Added an option to reorder TABs using drag’n'drop in the GUI. The option is available for connection tabs as well as Query/Query Builder/Schema Designer tabs.
    -- Added ‘FORM view’ option (in addition to ‘GRID view’ and ‘TEXT view’ already available) for managing data in DATA and RESULT tabs. ‘FORM view’ will display one row at a time and is in particular convenient when entering data from the keyboard. Auto_increment columns are handled. Other CONSTRAINTS must be handled by user. FORM view is an ENTERPRISE/ULTIMATE feature.
    -- As a consequence of the above CTRL+L keyboard shortcut will now ‘toggle’ between TEXT mode and either GRID-mode or FORM-mode (which is active).
    -- The Query Formatter is now completely rewritten. In principle all types of SQL statements are now supported and all limitations with the old implementation are lifted.
    -- Inside ‘pseudo comments’ (like /*! .. this .. */) “paranthesis’es matching” is now enabled. Inside plain comments it is still disabled.
    -- The Editor now has a ‘folding option’. Multi-line code and comment blocks between bracket-pairs, BEGIN-END pairs, C-style comment pairs (/* and */), WHILE-END WHILE pairs, LOOP-END LOOP pairs, REPEAT-END REPEAT pairs and CASE-END CASE pairs can now be ‘folded’ in/out (ie: hidden or unhidden).
    -- Autocomplete will now backquote table name (+ routine name etc.) if databasename is backquoted when inserting first-mentioned after a “.” (dot).
    -- There is now no size limit on files to be opened in the editor (except for available memory).
    -- When inserting rows both GRID-view and FORM view will now indicate auto_increment columns as (Auto) for easy identification. Normally user should not enter those, but let the server handle.
    -- The fix for slow initialization with large autocomplete databases that was introduced in 8.62 and reverted again in 8.63 is now included again. It has stabilized with this build.
    --When backing up 'all databases' with 'scheduled backup' the Performance_Schema database (as of MySQL 5.5) will now not be included in the backup. This is similar to how Information_Schema always was handled.
    -- We have reverted back the automatic proxy detection in upgrade-check. We had a few reports that it could cause a crash when the machine was awakening from standby and hibernation. Only Win7 Professional edition seems affected.
    -- When updating from RESULT tab we will now handle the database context automatically. The database context as selected by user is not used. Note that this applies to MySQL 4.1+ server and when not using HTTP-tunnel (as pre-4.1 MySQL and PHP do not expose the database in the result set)
    -- The caption (in 'tools' menu) ‘Restore from SQLdump’ was changed to ‘Execute SQL script’.

  • Bug Fixes

    -- Fixed formatting issues with text-mode if multiple multi-line string columns were displayed.
    -- The ‘persistence setting’ for ‘all rows’ in DATA tab would sometimes be forgotten.
    -- If scrolling in GRIDs is done using Scroll Bar (including Scroll Bar context menu) focus will now not change and will remain on the previously selected row. However navigation between rows in GRID using Pageup/PageDown will still change the focus between rows.
    -- If more than 9 Query etc. tabs were open it was not possible to navigate beyond the 9'th using keyboard shortcuts. Now ALT+9 will select the last tab (for connection tabs same was implemented in 8.5).
    -- Improved vertical scrolling in GRIDs with a large number of rows displayed.
    -- “EVENT” was not recognized as a keyword by syntax highlighting and autocomplete. Also "ARIA" (the new name for the 'maria' Engine in mariaDB 5.2) is now recognized as a keyword.
    -- Schema Sync will now show columns in the order they are defined in the table. Before they were alphabetically sorted.
    -- Removed redundant COMMENT clause in the ALTER script generated by Schema Sync.
    -- If 0 (zero) was given as the default value for a timestamp column CREATE/ALTER TABLE table would raise a syntax error, as SQLyog was quoting the default value as ’0'. Also specifying NULL as default (what is redundant for a NULLable column) would fail for similar reasons.
    -- ‘–-’ (two hyphens) followed by TAB (not only SPACE) is a valid MySQL single-line comment. We did not handle TAB in this context.
    -- Fixed a crash while copying to clipboard from table data/result tab.
    -- Autocomplete could sometimes delete the character following cursor position.
    -- CREATE/ALTER TABLE now ignores NULL entered as default for a NULLable column. It is redundant. Before invalid syntax was generated.
    -- With specific user operations in Connections manager a connection could be saved even if user replied NO the the ‘save question’. Also the connection manager now does not prompt user to save changes if only password/passphrase is changed and it is selected not to save password/passphrase.
    -- The FIND dialogue sometimes failed to keep focus on the FIND dialogue itself (recent fix was not complete).
    -- The dialog for defining ENUM/SET values was not showing when the ENUM/SET cell got focus using keyboard(when using mouse it was working as expected). Also it could open when another cell in same row of GRID had focus.
    -- When an existing jobfile for Data Sync was opened the order-of-tables in the jobfile was not honoured. It is now. This is in particular relevant for users using TRIGGERS as there is no way temporarily to disable TRIGGERS in MySQL.
    -- SJA for Linux was exporting file size upto 2 GB only (a compiler flag allowing for 'large files' was missing in build script).
    -- SJA for Linux did not show any error in mail or in console if it failed to connect to server. We will now notify both places (provided that 'send mail' option for the job is enabled).
    -- With a large number of rows displayed GRID could display garbage and fail to identify properly BLOB/TEXT data belonging to the row.
    -- When a new row had just been added from GRID it could be deleted even if user specfied another row to be deleted.
    -- Horizontal scroll bar in Query Editor and History Tab was not proper with long lines.
    -- Several small GUI fixes.

SQLyog 8.63 (October 2010)

  • Bug Fix

    -- The fix for slow initialization with large autocomplete databases in 8.62 has been reverted with this build. It introduced other issues like a possibility of SQLite database corruption and crashes. The fix will be added to 8.7 development tree when stable.

SQLyog 8.62 (October 2010)

  • Features

    -- INFO tab/HTML mode now displays a count of each type of database objects.
    -- SJA now supports an additional -r parameter that tells how big CHUNKS should be when copying to an empty table. The -r parameter has only effect with Data Sync jobs and is ignored with other types of jobs. This is a command line option only that is not supported from the GUI Wizard.
    -- GUI improvement in Data Sync Wizard clarifying the difference between syncing ‘All tables’ (existing at any time) and all tables existing at the time of building the job. It is now also much easier to select ‘almost all tables’ for a Data Sync job.
    -- Data Sync will now ignore differences as regards indexes on source and target tables except for the Primary Key/Unique Index used for sync. There is no need to require that all indexes are the same.
    --SJA for Linux had a dependency on the ‘libstdc++.so.5' shared library that is not installed as default on some recent Linux distros. This and similar dependencies have been solved with this build. The download size has increased but it is necessary to ensure that SJA will run ‘out of the box’ on all Linux systems.

  • Bug Fixes

    -- While Viewing Advanced Properties of table SQLyog executed SHOW TABLE STATUS with no LIKE clause. That could be slow.
    -- Fixed a crash when copying to clipboard from RESULT tab.
    -- If an external file was imported through BLOB-viewer the ‘dirty flag’ displaying a warning that data were not saved would not display in GRID.
    -- Changed the keyboard shortcut for Save Changes in User Manager for consistency with normal Windows practice.
    -- Fixed a crash when deleting a row from RESULT tab.
    -- Invoking specific keyboard shortcuts (Ctrl+TAB, Ctrl+F4) could cause a crash if a background connection thread (Schema Sync, Copy Database, Restore from SQL Dump, Back up database as SQL Dump) was running.
    -- Working with TRIGGERS could be very slow (in Schema Sync, backup etc.). This is due to an issue with Information_Schema. We now use a SHOW syntax that is not affected.
    -- Schema Sync prefixed a VIEW-name with the database name and thus it failed if source and target databases were not named identically.
    -- Schema Sync did not consider ALGORITHM and SQL SECURITY -clauses for a VIEW.
    -- When executing multiple queries the ‘execution time’ information displayed in status line was for a single query. Now we will aggregate for all queries.
    -- Removed result tab and profiler tab from a newly opened query tab. There is no information to display at that time.
    -- Find & Replace was setting the focus back to the editor whenever a match was found.
    -- SJA wizards were always opening up in the center of primary monitor even though SQLyog was running in another monitor.
    -- Right clicking on scroll bar of different windows was not popping up the scroll context menu.
    -- Data Sync was ignoring any table names with more than one leading SPACE character saved in job files.
    -- Data Sync was not allowing anonymous users to connect while reading the connection details from job files.
    -- Parenthesis’es highlighting inside ‘single quoted string’, “double quoted string” and `quoted identifier` is disabled now.
    -- Fixed a crash that could happen due to memory corruption while adding queries executed in Schema Designer to History tab.
    -- When updating a resultset from RESULT tab SQLyog failed to use the Primary Key alone in the WHERE clause if the SELECT query populating the RESULT tab used a table alias in the FROM clause. Updates could then fail if there were floating point columns in the resultset. Also when adding new row in such case defaults were not displayed in the GRID.
    -- Initialization of the program could be slow if user had very large SQLite databases used by autocomplete.
    -- Vertical scrolling in RESULT Tab or DATA Tab was saving the unsaved changes.

SQLyog 8.61 (September 2010)

  • Features

    -- INFO tab/HTML mode now displays a count of each type of database objects.

  • Bug Fixes

    -- Fixed a crash on Vista+ with ALTER TABLE. It happened due to changing compiler to Visual Studio 2010 in 8.6. The older Visual Studio version used handled this bug in our code without crashing.
    -- Fixed a buffer overrun issue with long column headers that also could cause SQLyog to crash. Also this was a similar issue due to upgrading the build environment in 8.6.
    -- SQL formatter inserted garbage value if query contained '%'.
    -- "Parenthesis'es highlighting" is now disabled inside MySQL-comments. Before an unmatched parenthesis in a comment would cause 'mis-matching' of parenthesis'es in the executable SQL outside comments.
    -- Fixed some incorrect MySQL API calls with HTTP tunneling. This issue was reported internally only.
    -- The RESULT tab in text mode was showing incomplete data with multi-line strings.
    -- Import external data now always uses UPPERCASE for keywords in queries sent to the ODBC-source as some ODBC-sources require this.
    -- Table Data tab was unable to perform custom filter when there was an escape character in the filter text.
    -- SQLyog was hanging while showing filter tooltip with more than 80 charecters in Table Data tab.

SQLyog 8.6 (August 2010)

  • Features

    -- User Management is completely redesigned and rewritten. Now privileges on all levels - as well adding/deleting/renaming users and changing passwords - are managed from the same interface – an expandable tree view. Also GRANT and REVOKE syntax is now used (before the MySQL privileges tables were manipulated directly). Also MySQL ‘anonymous users’ are now fully supported. Now both username and hostname may be left as an empty string. A confirmation popup will appear, though.
    -- Added a ‘custom filter’ option in DATA and RESULT tab GRIDs. With this option, user can filter on any value from any cell.
    -- Added options to filter on ‘%value’ and ‘value%’ in both the ‘Filter’ menus and ‘Custom Filter’ dialogs.
    -- Added a tooltip to the 'filter' icon in DATA and RESULT tabs displaying current filter settings.
    -- CTRL+INS and SHIFT+INS keyboard shortcuts will now copy and paste (like CTRL+C and CTRL+V) in GRIDS.
    -- Added support for “parenthesis’es matching” in the editor TAB as well as the small query editors in 'Notifications Services' and 'Import External Data' wizards. You may find what parenthesis/bracket matches another one by simply positioning the cursor after a bracket. The actual bracket and its match will highlight. Note that this feature will work with any string – whether valid SQL or not. Both plain parenthesis’es, square brackets and curly braces are supported (independently of each others).
    -- If “save password” is checked for a connection, then focus in Connection Manager will be on the connection name – else it will be on the password. Before focus was always on password when Connection Manager was opened.
    -- Improved performance by optimizing code when SQLyog was internally performing string comparisons (what it does a lot).

  • Bug Fixes

    -- In text-mode, columns in DATA and RESULT tab would not align properly with non-ASCII characters. We were basically counting bytes – not characters. This is now fixed. But note that alignment issues may still happen in special cases with some non-western scripts in cases where the font itself prints more characters with the width of a single character.
    -- Fixed some bugs when migrating default values from SQL server using Import External Data. Issues were occurring with specific default values and datatypes.
    -- Terminating a job from SJA wizards was not killing the PLINK process used for SSH-tunneled connection.
    -- The dialog for defining ENUM/SET properties only appeared after clicking the 'length' cell from CREATE/ALTER TABLE. Now it pops up as soon as user has selected the ENUM/SET type.
    -- The output in the MESSAGES tab is restructured to make the output more readable when multiple queries are executed.
    -- When opening a ANSI-encoded file with non-ASCII characters the encoding would not be detected correctly, and the content would garble (no issue with UTF8 and (Windows) UTF16-encoded files). This bug was introduced in 8.3.
    -- SQL exports added redundant Unix-linebreaks, what would cause some editors to display an empty line. This bug was introduced in 8.4.
    -- SQLyog could crash when connecting from ‘import external data’ wizard to a source database with a huge number of tables in it.
    -- The Windows Explorer dialog for selecting files to be opened could display garbage characters at the beginning with non-English locales. The reason was SPACE characters incorrectly added by SQLyog.
    -- Fixed a GDI leak occurring when switching between TABS in the GUI (editor TABS or connection TABS).
    -- Fixed a crash that could occur when closing the copy database dialog.
    -- Create Index dialog was not resizing/positioning the grid properly. Sometimes the issue could render the dialog unusable
    -- Other small GUI fixes

  • Miscellaneous

    -- With this build we have changed our build environment from Visual Studio 2003 to 2010.
    -- Windows 2000 is no longer supported.

SQLyog 8.55 (July 2010)

  • Bug Fixes

    -- If user edited data in RESULT-tab GRID and changed display mode from grid-mode to text-mode before saving changes, the UPDATE statement would omit the proper WHERE-clause. As a consequence all rows would be updated. This bug was introduced in 8.4. All users using 8.4 or higher should upgrade due to this serious bug.
    -- Sorting and filtering on YEAR-type columns in RESULT tab did not work. Now it works with YEAR(4), but with YEAR(2) it still does not with this release.
    -- A connection tab/window can now be closed even if there is only one connection.
    -- Fixed an issue with Schema Sync when source and target differed in both columns and Foreign Keys. Sometimes the ALTER script would only specify the FK-changes to target.

SQLyog 8.54 (July 2010)

  • Bug Fixes

    -- With many servers/connections registered in SQLyog the drop-down list in the connections dialog would flicker. The flickering was introduced in 8.5.
    -- Query Formatter was not handling queries of size greater than 2 KB. Now the size is increased to 8 KB. The 2 KB limitation was introduced in 8.18.
    -- Import of data from .xlsx files from Excel 2007+ was failing with double-precision datatypes.
    -- Update-check failed if SQLyog was running behind a HTTP-proxy. The settings will now be detected. However proxies requiring authentication are not handled with this release.

SQLyog 8.53 (July 2010)

  • Bug Fixes

    -- SJA was always using port 22 to connect to SSH, but now any valid SSH port can be used to establish connection with MYSQL server using SSH.
    -- Fixed a PLINK crash which was introduced in SQLyog 8.5.

SQLyog 8.52 (June 2010)

  • Bug Fixes

    -- Solved an issue with SSH connection when putty is present. PLINK was using the default settings of putty to connect, resulting error in connection (introduced in 8.5).
    -- Solved an issue with SSH connection where SQLyog was reporting Error No. 2003 even if the MySQL port was correct (introduced in 8.5.1).
    -- If MySQL connection used "anonymous user", SJA was throwing an error.
    -- For create/alter database, collation drop-down list did not populate values correctly if TAB key was used to select the charset.
    -- In Scheduled backup if the database name contains Non-ANSI characters, export was failing when 'ALL database' option was selected.
    -- Fixed the way keyboard shortcuts Ctrl+Tab and Ctrl+Shift+Tab behave.

  • Miscellaneous

    -- Selecting a connection from the drop-down list of connection window is now faster.
    -- Keyboard shortcut Ctrl+W now closes the current connection tab. Keyboard shortcut for the Database Synchronization tool has been changed to Ctrl+Alt+W.

SQLyog 8.51 (June 2010)

  • Bug Fixes

    -- The 'Export Table Data As...' option from the object browser menu was exporting just the column headers, this was introduced in 8.5 GA.
    -- In the Notification Services wizard, if the field contained data with quotes, SJA was inserting extra slashes along with the field value.
    -- The 'timeout' for establishing connection using SSH has been increased from 15 seconds to 30 seconds (15 seconds was too less to establish connection with slow SSH servers).

SQLyog 8.5 (June 2010)

  • Features

    -- This version introduces a tabbed interface for connections. Tabs will be colored (if chosen) like the Object Browser. Note that the meaning of shortcuts Ctrl+number have changed: they will now shift between connection tabs. The old Ctrl+number shortcuts have been changed to Ctrl+Shift+number.
    -- In connection manager the color code for a connection is now indicated.
    -- Added an option to 'duplicate row' from DATA tab GRID context menu. Tables with auto_increment columns are handled. Note that handling all other CONSTRAINTs is user's responsibility.
    -- When a GRID operation returns a warning there is now a clickable link for SHOW WARNINGS. Note: this is not implemented for HTTP-tunneling.
    -- In RESULT tab data can now be filtered client side as already possible in Table Data.
    -- Menu option 'Paste SQL Statement' will format the query as per the SQL Formatter Preferences settings.
    -- Tabs can now be closed with the click of middle mouse button (mouse wheel).
    -- Keyboard shortcut F3 for 'Find Next' in Query Editor and Result/Table Data tab in Text mode. Note: Not implemented in BLOB-viewer.
    -- Shift+click can be used to select/deselect multiple objects in tree-view control of Copy Database, Export, etc.
    -- Added a menu option to 'Find Next'in 'edit' menu and query editor context menu.
    -- Find/replace settings are now persistent within the session.
    -- Improved the speed of (csv, html, xml, excelxml and sql) - exports from RESULT tab.-- Files can now be drag'n'dropped into the program window and file will be opened in a new Query/Schema Designer/Query Buillder tab depending on file type (like 'file .. open' menu). Same is implemented in SJA wizards where a file can be opened.

  • Bug Fixes

    -- It was not possible to enter a value higher than 999,999 for OFFSET and LIMIT in DATA and RESULT tabs. Now up to 15 digits are allowed.
    -- 'No Database Selected' error could occur with Data Sync after a reconnect. We are now prefixing table names with database name in Data Sync.
    -- Shortcut for copying 'Ctrl+Insert' was not preserving the letter case.
    -- Fixed a rare issue where the SQLyog configuration file (SQLyog.ini ) could be corrupted – and even deleted – if multiple program instances using same .ini instance were running simultaneously. Scenarios include the situation where user by mistake (double)clicked the program icon twice.
    -- Autocomplete could fail to select the items from the listbox (popup window) display after typing "." if a '_' (underscore) character was present with list box items. Technically this was an incompability between sorting in SQLite, Scintilla and standard C functions. We have added our own code to handle this. But note that for performance reasons it is not handled perfectly with Ctrl+Space and Ctrl+Enter where it can be necessary to use arrow-keys for selection in such case.
    -- Several small fixes with 'Find Next' in editor and Blob Viewer.
    -- SJA wizards would sometimes fail to specify the correct jobfile path to the Windows Task Scheduler.
    -- The grid control in Manage Index dialog did not resize properly with some monitor resolutions.
    -- The upgrade check dialog popped up on top of other running applications.

  • Miscellaneous

    -- Use of 'compressed protocol' is now default for new connections. Our test tell that the positive effect of using it can be huge when it should be used and the negative effect when using it when it should not, is very small.
    -- Added keyboard shortcut Ctrl+9 for selecting last connection tab.-- In RESULT/DATA tab all Copy related options are grouped together.
    -- Selecting this option 'Copy Selected Row(s) to Clipboard' we can now copy the selected row to the clipboard with out checking a row on the grid.-- Minimized the number of pop-ups while creating a Table.
    -- The PLINK shipped with SQLyog was updated. This solves rare connection problems with specific SSH configurations. Mostly connections to very recent Linux distributions were affected.
    -- Also the SQLite library within SQLyog has been upgraded to the latest version. The new version of SQLite improves stability as compared to the previous version where a possible journal file corruption was not handled.
    -- If user does not specify a file extension for the jobfile the wizard will add the standard extension '.xml'.
    -- The option in 'preferences' to 'Add keywords in UPPERCASE' is removed. It was redundant since introduction of the 'auto-capitalization' feature.
    -- Dialog fonts are now default system font.
    -- In order to save space Query Builder and Schema Designer tabs will now show the filename without ('.queryxml' and '.schemaxml') extensions.
    -- Installers will now have two numbers after the numbers identifying the version no. (identical to common naming conventions for RPM installers for Linux). This is done in order to ensure that every installer we build has a unique name. Various proxy systems would sometimes cache and provide the old file on download request.

SQLyog 8.4 (April 2010)

  • Features

    -- Dumps created with 'scheduled backup' can now be zipped.
    -- 'Notification Services' can now read queries from an external file.
    -- Added an option to send a mail alert if an error occurs while executing a 'maintenance query' from Notification Services.
    -- In RESULT tab data can now be sorted by clicking on column headers which is already possible in DATA tab. However note the difference as compared to sorting in DATA tab: in DATA tab we will send a SELECT .. ORDER BY .. query to MySQL – in RESULT tab we will sort inside the internal SQLyog data buffer. That means that for strings sorting in RESULT tab does not respect the collation defined for the data. Also all sorting on string values in RESULT tab is currently always case-insensitive (and note: this also applies to binary types: binary, varbinary and BLOB).
    -- 'copy to clipboard' and 'export to CSV-file' - settings are now independent.
    -- The file menu has been reorganized to comply with standards. Note that to insert from a file into an open editor tab you must now use the context menu item from the editor. Such menu item in the context menu was also added with this release.
    -- Added menu items (for exports and 'copy to other..') to table-level in Object Browser.
    -- Added an option to find redundant indexes. The control and the information is available from INFO tab/html view. This is an ULTIMATE feature.
    -- Drastically improved the speed of the autocomplete option to show suggestions while typing.
    -- Save dialog now has 'yes to all' and 'no to all' options when closing a connection or the application.

  • Bug Fixes

    -- Schema Optimizer did not handle the auto_increment flag. Underlying reason was that MySQL 'Procedure Analyse()' does not. We now retrieve this information otherwise.
    -- When the database context was changed by user between execution of same SELECT-query by clicking 'refresh' an empty RESULT tab displayed, what was confusing. Also it was possible to crash SQLyog from this empty RESULT tab. Now we print an error in MESSAGES tab in such case and no RESULT tab displays.
    -- Fixed a crash (reported internally) that could happen when sorting on multiple columns in DATA tab. Also an invalid query could be generated under same conditions.
    -- Notifications services would not execute queries after a query returning an error if connection was over a HTTP-tunnel even if user had selected not to abort on error.
    -- Very long strings containing the '_' or the '\' character could cause a buffer overrun when looking up a match in the auto-complete database. Windows would then terminate SQLyog.
    -- Fixed a rare issue where access to a port (to be used for a SSH tunnel) was erroneously blocked by SQLyog before it was reserved. Even SQLyog itself could then not use it and connection would fail.
    -- Selecting from the connections dropdown in connection manager using keyboard was not functional.
    -- The MySQL keywords PROFILE and PROFILES were not considered as keywords by the SQLyog editor and auto-complete.
    -- New row(s) added in GRID in DATA tab did not display when shifting to TEXT-mode. A refresh was necessary.
    -- Result tab now shows new row(s) and edited data in TEXT-mode.
    -- On un-checking 'save password' option in connection window, SQLyog was not deleting password in sqlyog.ini file.
    -- Schema Designer was prompting table out-of sync message if there was a difference in table's AUTO_INCREMENT 'value' or if extra spaces were present between identifiers.
    -- On executing SELECT statements having clauses like PROCEDURE, INTO FILE, FOR UPDATE, etc., SQLyog was adding LIMIT clause if result tab paging option is enabled.-- Manage privileges dialog was missing lock table and create_temporary_table privileges for MySQL server version less than 4.1.
    -- Copy database would fail if source server has lost its connection while fetching data because of too small 'net_write_timeout' value. But still copy database dialog was showing 'copy successful'.
    -- GUI fixes.

  • Miscellaneous

    -- In order to indicate table storage engine SQLyog was retrieving the table's information from Information_Schema while expanding database from object-browser. This was slow in some MySQL server versions. Now the query to retreive the engine information will be executed on demand only.
    -- SQLyog now has a common option in Preferences to "Prompt if a tab with unsaved changes is closed". Earlier it was separate for Query Editor, Schema Designer and Query Builder tabs.
    -- In RESULT result tab in edit mode we have restricted adding more than one new row at a time. It conflicted with filtering.

SQLyog 8.32 (March 2010)

  • Bug Fixes

    -- If 'all rows' option for a table was selected in DATA tab this setting had effect when switching to a table that had never been viewed before. Consequently first selecting 'all rows' for a small table and next selecting a huge table could cause system memory exhaustion. This bug was introduced with the table-level row-number persistence in 8.22. Now a table that has never been opened before will be opened first time with the default LIMIT setting.
    -- First time a specific query was executed paging in RESULT tab did not work properly for that query.
    -- If paging was disabled for RESULT tab the 'rows in a range' radiobutton was still selected (but 'greyed out' though).
    -- When printing from Schema Designer blank sheets could be printed if a table object was positioned close to the border of a page.
    -- Fixed (yet another) multimonitor issue.
    -- When a Query Builder tab was closed with an unchanged QB layout, SQLyog prompted if changes should be saved.
    -- If tables named identically except for lettercase existed in same database on a unix/linux server one of those tables would display data for the other table in DATA tab. The wrong table was specified in the query sent to MySQL. This bug was introduced in 8.0.
    -- Fixed a crash when copying data to clipboard from DATA tab using toolbar icon.
    -- Improved GUI in 'Import External Data Tool' wizard (explaining limitations with various Microsoft ODBC drivers).
    -- SQLyog connection manager required a user name, what prevented connection as a MySQL 'anonymous user'.
    -- The automatic detection of what local port to use for SSH-tunneling (as introduced in 8.21) could in rare situations detect a port from where connection was not possible.
    -- Schema Sync could generate an invalid USE... LIMIT... statement. This bug was introduced with paging in RESULT tab in 8.3.

SQLyog 8.31 beta1 (March 2010) - also note that 8.31 GA version was never released

  • Features

    -- Dumps created with 'scheduled backup' can now be zipped. Note: there is one limitation with current implementation in this beta: the archive name is restricted to use characters from current ANSI codepage.
    -- 'Notifications Services' can now read queries from an external file.
    -- Added an option to send a mail alert if an error occurs while executing a 'maintenance query' from Notifications Services.
    -- In RESULT tab data can now be sorted by clicking on column headers like already possible in DATA tab. However note the difference as compared to sorting in DATA tab: in DATA tab we will send a SELECT .. ORDER BY .. query to MySQL - in RESULT tab we will sort inside the internal SQLyog data buffer. That means that for strings sorting in RESULT tab does not respect the collation defined for the data. Also all sorting on string values in RESULT tab is currently always case-insensitive (and note: this also applies to binary types: binary, varbinary and BLOB).

  • Bug Fixes

    -- If 'all rows' option for a table was selected in DATA tab this setting had effect when switching to a table that had never been viewed before. Consequently first selecting 'all rows' for a small table and next selecting a huge table could cause system memory exhaustion. This bug was introduced with the table-level row-number persistence in 8.22. Now a table that has never been opened before will be opened first time with the default LIMIT setting.
    -- When printing from Schema Designer blank sheets could be printed if a table object was positioned close to the border of a page.
    -- Fixed (yet another) multimonitor issue.

SQLyog 8.3 (March 2010)

  • Features

    -- Added an option to define a 'color code' for a connection. The color will be used as background color in the Object Browser.
    -- A Query Builder session can now be saved and resumed.
    -- Added A context menu to the Query Builder canvas.
    -- In Query Builder a table alias can be defined for any table by double-clicking the title bar of the table symbol.
    -- In RESULT tab results can now be retrieved page-wise. This is ON as default with this build with a defined LIMIT of 1000 rows. For a specific query/resultset user can change and for the specific query the setting is persistent across sessions. Also read 'miscellaneous' below.

  • Bug Fixes

    -- Deleting a user would leave non-global privileges orphaned in the 'mysql' database. Now we use DELETE USER syntax if server supports.
    -- Also using EDIT USER dialogue to change host or user specifier for a user would not move non-global privileges. We have split the old ALTER USER dialogue into two: a EDIT USER and RENAME USER dialogue. The latter will use RENAME USER syntax if server supports.
    -- On Wine Data Sync could generate a malformed XML-string what would case Data Sync to abort.
    -- Fixed an issue where SSH-tunneling failed with public/private key authentication. Technically the fix is in the PLINK binary shipped with SQLyog.
    -- SJA failed to send notification mails if Yahoo SMTP servers were used. Note that the fix disables encryption option with Yahoo SMTP servers – but it won't work anyway due to a non-standard SMTP implementation server-side.
    -- When importing data from a Universe ODBC-source string data could be truncated.
    -- The fix in 8.22 for the issue that horizontal scrollbar in GRID would sometime not appear was not complete. It could still happen.
    -- SQLyog will now trim trailing whitespaces in Connection Manager and Create dialogs to avoid MySQL Errors.
    -- When calling a Stored Procedure with more than one SELECT statement from 'Notifications Services' only one result set was sent by mail.
    -- The sja.log file had no line-breaks between what was recorded for two jobs.
    -- On multi-monitor system resizable dialogues could open on the wrong monitor. New implementation is like this: on multi-monitor systems main program dialogue and 'first child dialogue' (example: ALTER TABLE) will open where they were closed (if possible), second and higher child dialogues (example: table advanced properties) will always open on top of its 'parent' dialogue. Non-resizable dialogues (such as confirmation boxes) will always open on top of their 'parent's.
    -- If more than one comment occurred before a SELECT statement in the editor, the statement was not identified as a SELECT statement by the Query Profiler and the Query Profiler TAB would not display.
    -- With multiple SSH-tunnelled connections open stopping and re-executing queries in multiple connections in a fast manner could crash SQLyog.
    -- We did not validate client-side if user checked atoincrement option for a bit column with Create/Alter table dialog.
    -- If an error occurred while renaming a trigger then trigger was lost as SQLyog was not recreating it back.
    -- Small GUI fixes.

  • Miscellaneous

    -- The default LIMIT setting for DATA tab has been removed. The setting is not required since we introduced table-level persistence for number of rows displayed. The default for new tables that have not been opened before is 50 – but when user changes the value and next 'refresh'es SQLyog will save the LIMIT for that particular table persistently across sessions. This in combination with page-wise display in RESULT tab results in a more uniform User Interface for DATA and RESULT tabs.

SQLyog 8.22 (January 2010)

  • Bug Fixes

    -- 'Test connection' would succeed even if a non-existing database was specified in the database field. Connection would next fail.
    -- Database name (if any) would erase on clicking OK in error dialog in connection window.
    -- HTML exports could drop the first character of string output.
    -- With multimonitor setup and SQLyog on the right screen some rarely used dialogues would pop up on left screen.
    -- Copy database/table will now display 'connecting to source/target server' while connecting. If establishing connection took more than a few seconds users could have the impression that nothing was happening.
    -- An extra RESULT tab could appear when executing a query. This bug was introduced in 8.2. Professional and Enterprise editions were affected.
    -- In notification wizard sending mail would fail if there was no semicolon after the query and “include original query” option was checked.
    -- With more than 65 536 (2^16) rows displayed in GRID, the GRID scrollbar would expose strange behavior. We were using a scroll control using 16 bit integers internally. New scroll control handles +4 billion rows.
    -- In Wine when displaying very wide tables and result sets (like 500+ columns) the column header could disappear. The underlying reason was that Wine failed to render a gradient as transparent but rendered it as opaque instead.
    -- Horisontal scrollbar in GRID would sometime not appear when executing a query returning a large number of columns if not scrollbar was required for previous query.
    -- With larger than 'normal' DPI setting the BLOB Viewer header would not display properly.
    -- 'Export as SQL-dump' dialogue was redesigned to allow for longer files paths.

SQLyog 8.21 (January 2010)

  • Features

    -- Now SJA will also send mail alert if job aborted due to MySQL error. Before it was only internal SJA error.
    -- The local port used by SSH-tunneling will now be selected automatically. This will avoid conflicts in case multiple programs use SSH. Also with Data Sync from command-line/scheduler it was possible to use same port for both connections what would effectively sync a server with itself.
    -- Caption for 'Parse' button in Notification Services Wizard was changed to make it clear that it will actually execute the statement(s) entered. There is no way to let the server parse a statement except for executing it.
    -- Connection windows for SSH connections will now list SSH host details in the title bar.
    -- Tooltips for an icon will now list the keyboard shortcut performing same action.
    -- The option to display 'all' versus a 'LIMIT'ed set of rows in DATA tab is now table-specific and saved across sessions (note that – similar to the 'column width persistence' feature - connection parameters are not using for identifying a table; only the database name and the table name are).
    -- Objects in an Object Browser node is now sorted case-insensitive.

  • Bug Fixes

    -- Continuously clicking the 'Calculate' button in Schema Optimizer in a fast manner could crash SQLyog.
    -- The keyword.db file (used by auto-complete and syntax highlighting) is now read only. Various validators for Windows7-compatibility would report that SQLyog wrote to "Program Files" folder at runtime (what it did not).
    -- When copying to clipboard an out of memory error could occur also when there was enough memory.
    -- The table menu will now indicate what storage engine is currently used for the table.
    -- Autocomplete and syntax highlighting did not recognize keywords archive, blackhole, federated, example, maria, pbxt, federatedx, falcon and mrg_myisam.
    -- Notifications Services/'Send Query to Email address' option did not send a mail if an error occurred. Now a mail listing the error will be sent.
    -- We did not validate client-side if user specified a default value for an auto-increment column.
    -- In DATA and RESULT tab the context menu was only working from GRID-cells. Now it also does from GRID headers and 'whitespace' in the tabs.
    -- Updating a 'TIMESTAMP on update CURRENT_TIMESTAMP' had no effect (the particular column was not listed in the UPDATE-statement sent by SQLyog). This was a necessary restriction before 8.13 but since we – from 8.13 – only list columns that have actually been edited by user, we can now lift this restriction.
    -- Import External Data – TRIGGERS could fail to update a SQL Server (n)varchar if it contained an empty string.
    -- If user had selected to save SSH-password locally and later changed the password, the new password was not saved - unless clicking 'save' button in connection manager interface.
    -- When importing an external script with no explicit SET NAMES on top, SET NAMES latin1 was executed by SQLyog. Now we won't do this - and server default charset will have effect for the import in such case.
    -- Autocomplete did not handle identifiers with the '_' character correctly what could result in too many matches when matching the database with a patttern in editor containing such character.
    -- Other small GUI fixes.

  • Miscellaneous

    -- The 'Objects' menu was renamed to 'Others's.
    -- This release ships with an updated tunneler file for HTTP-tunneling. In the old tunneler file functions were used that are depreciated in PHP 5.3x.