SQL Workbench/J Changelog

What's new in SQL Workbench/J 124

Apr 8, 2019
  • Enhancements:
  • WbExport can now write .xlsm files ("XLSX with Macros")
  • In the auto-completion popup for columns, the column's data type is now displayed
  • For PostgreSQL, row-level policies created for a table are now shown in the generated DDL
  • Added auto-completion support for Oracle's SHOW command
  • Added auto-completion support for PostgreSQL's SHOW, SET and RESET commands
  • Added support for new features in PostgreSQL 11
  • Improved support for Greenplum
  • It's now possible to lock a result not only through the GUI, but also through the annotation WbKeepResult
  • It's now possible to define global SSH hosts that can be selected for each connection profile
  • It's now possible to display the column's table in a query result if the JDBC driver provides that information
  • When importing Excel sheets it's now possible to disable the automatic re-calculation of formulas
  • It's now possible to use multiple profile files by specifying a directory through the -profileStorage parameter
  • It's now possible to define environment variables for the programs started through WbSysExec
  • For PostgreSQL, user defined collations are now shown in the DbExplorer and DbTree
  • For PostgreSQL, Oracle and SQL Server time zone information can now be displayed for columns that contain that information (TIMESTAMP WITH TIME ZONE or datetimeoffset)
  • For DB2 for I, variables are now shown in the DbExplorer and DbTree
  • For DB2 for I, the character set of columns (CCSID) is now shown in the generated DDL statements.
  • It's now possible to use the schema filter expressions from the connection profile as parameters to the JDBC API call to speed up schema retrieval.
  • It's now possible to define more flexible filters for the DbExplorer's table list
  • Bug fixes:
  • For Postgres, WbCopy was not able to write values into TIMESTAMPTZ column.
  • For Oracle versions 10 or lower, the source of materialized views was no longer displayed.
  • For Oracle, when displaying the procedures in the DbExplorer and choosing "*" for the schema, the procedure owner was no longer shown in the list of procedures.
  • For SQL Server, the DROP statement generated for sequences was not correct.
  • If the option "Always allow "Execute selected" was disabled, directly after opening the window "Execute Selected" would still run all statements.
  • Running a macro by using the macro's name did not work if there was a comment preceding the macro's name in the editor.
  • When a result was locked ("Keep result") subsequent new result tabs were not always activated automatically.
  • When connecting to a profile with a corrupted workspace, the main window was not usable any more.
  • Additional libraries were no longer loaded when starting SQL Workbench/J using "java -jar sqlworkbench.jar"
  • When multiple columns where selected in a result, the "Filter by value" was applied using only the first selected column.
  • The -commitEvery parameter for WbImport and WbCopy did not work
  • When using WbConnect with nested WbIncludes, the connection would not be closed if an error occurred
  • When using "Check foreign keys" in the dialog to drop multiple objects, non-table objects were removed.
  • "Save As" did not use the profile's default directory
  • The default directory of the profile was not used when opening files
  • Implemented a workaround for SQLite, so that invalid DATE values could be read from columns defined as DATE.
  • When using "quoteCharEscaping=duplicate" with WbImport, empty strings or strings that only contained a single (escaped) quote character were not imported correctly.
  • In case of an error, the cursor in the editor was no longer moved to the error position.
  • For PostgreSQL, the generated DDL for foreign servers was incorrect
  • For Oracle, NUMBER columns without precision were exported with a decimal separator to Excel files.
  • Showing rowcounts in the DbExplorer did not work.
  • For Oracle, the result of functions returning a refcursor was not displayed correctly.

New in SQL Workbench/J 123 (Apr 8, 2019)

  • Enhancements:
  • It's now possible to jump between statements in the editor.
  • For Postgres global objects are now shown in the DbTree and DbExplorer
  • WbExport now supports specifying a format pattern when exporting numbers to text files.
  • Expandable macros now also support placeholders for the selected text and statement.
  • WbDataDiff can now optionally create INSERT statements for tables that do not exist in the target database.
  • Added support for new Postgres 10 features (partitioning, identity columns)
  • For Firebird, DOMAINs are now included in the dependency display
  • WbImport now also supports the -skipTargetCheck option
  • It's now possible to define a default directory for a connection profile that is used e.g. for WbInclude or WbExport
  • The default encoding used for files in the editor can now be changed in the options dialog
  • WbImport and WbExport now support the -locale parameter to define the locale used for parsing and formatting dates and timestamps
  • For Postgres, the type of an index (btree, brin, gist, gin, ...) is now shown in the DbExplorer
  • For Postgres, TYPEs are now included in the dependency display
  • The formatting of numbers can now be controlled in more detail
  • For SQL Server and MySQL the USE command now supports code-completion
  • Generated DDL scripts now only contain commit statements if the current connection is not set to auto-commit (and the DBMS supports transactional DDL)
  • For Postgres, a tablespace other then pg_default will now be displayed in the generated source for tables and indexes
  • Bug fixes:
  • SQL Workbench could not be started with Java 9
  • BLOB and NVARCHAR literals were not handled correctly when formatting a statement
  • Replacing variables inside other variables did not always work
  • WbSchemaDiff did not handle multiple indexes on the same column list correctly
  • It was no longer possible to connect to a SAP DB
  • Navigating foreign keys from the result set did not work for non-numeric data types
  • Made saving of Workspaces more robust against errors.
  • For SQL Server, if integratedSecurity=true was used, SQL Workbench still prompted for a password
  • Made the SQL formatter more robust against useless parentheses around sub-selects
  • When an expandable macros was invoked through the menu, the cursor position was not correct when using ${c}
  • It was not possible to change the statement/query timeout in GUI mode using SET TIMEOUT
  • Detaching a result was longer possible in build 122.2
  • The option "Remove comments" was not working with databases are using non-standard characters to quote identifiers
  • For Oracle, the display format for timestamps was not used for "timestamp with time zone" values
  • SSH tunneling did not work with Oracle when using a service name in the JDBC URL
  • If the MacroPopup was open and a profile with a different macro file was loaded, the macros in the popup weren't re-loaded
  • Fixed the handling of long column names in the dialog to select columns
  • WbCopy did not work if there was another object (e.g. a sequence or view) in the source database with the same name as the table specified with -sourceTable
  • The dialog to select columns for copying them to the clipboard did not display all options on Mac OSX.
  • Changing between connection profiles that had a non-standard macro file and profiles using the standard macro file could lead to a situation where the standard macros were no longer available.
  • "Put SELECT into Clipboard" did not work any longer in the DbTree or DbExplorer
  • Using -sourceDir to import multiple files into a single table did not work if -fileColumns was not specified
  • WbDataDiff failed when using -includeDeletes=true and the comparison was done between two DBMS that stored object names differently (e.g. UPPER vs. lowercase)
  • The parameter -varFile did not work anymore
  • For Oracle, the "realplan" option for autotrace did not work for queries starting with a common table expression (WITH)
  • For Oracle, NUMBER columns with a negative scale e.g. NUMBER(10,-2) were not displayed correctly

New in SQL Workbench/J 122.2 Dev (May 9, 2017)

  • Enhancements:
  • For Firebird, DOMAINs are now included in the dependency display
  • WbImport now also supports the -skipTargetCheck option
  • It's now possible to define a default directory for a connection profile that is used e.g. for WbInclude or WbExport
  • The default encoding used for files in the editor can now be changed in the options dialog
  • Bug fixes:
  • The option "Remove comments" was not working with databases are using non-standard characters to quote identifiers
  • For Oracle, the display format for timestamps was not used for "timestamp with time zone" values
  • SSH tunneling did not work with Oracle when using a service name in the JDBC URL
  • If the MacroPopup was open and a profile with a different macro file was loaded, the macros in the popup weren't re-loaded
  • Fixed the handling of long column names in the dialog to select columns
  • WbCopy did not work if there was another object (e.g. a sequence or view) in the source database with the same name as the table specified with -sourceTable

New in SQL Workbench/J 122.1 Dev (Mar 14, 2017)

  • Enhancements:
  • WbImport and WbExport now support the -locale parameter to define the locale used for parsing and formatting dates and timestamps
  • For Postgres, the type of an index (btree, brin, gist, gin, ...) is now shown in the DbExplorer
  • For Postgres, TYPEs are now included in the dependency display
  • The formatting of numbers can now be controlled in more detail
  • For SQL Server and MySQL the USE command now supports code-completion
  • Generated DDL scripts now only contain commit statements if the current connection is not set to auto-commit (and the DBMS supports transactional DDL)
  • For Postgres, a tablespace other then pg_default will now be displayed in the generated source for tables and indexes
  • Bug Fixes:
  • The dialog to select columns for copying them to the clipboard did not display all options on Mac OSX.
  • Changing between connection profiles that had a non-standard macro file and profiles using the standard macro file could lead to a situation where the standard macros were no longer available.
  • "Put SELECT into Clipboard" did not work any longer in the DbTree or DbExplorer
  • Using -sourceDir to import multiple files into a single table did not work if -fileColumns was not specified
  • WbDataDiff failed when using -includeDeletes=true and the comparison was done between two DBMS that stored object names differently (e.g. UPPER vs. lowercase)
  • The parameter -varFile did not work anymore
  • For Oracle, the "realplan" option for autotrace did not work for queries starting with a common table expression (WITH)
  • For Oracle, NUMBER columns with a negative scale e.g. NUMBER(10,-2) were not displayed correctly

New in SQL Workbench/J 122 (Feb 8, 2017)

  • Enhancements:
  • Conditional execution of Workbench commands now support -isDBMS and -isNotDBMS
  • Added basic support for EXAsol
  • Added support for SSH tunneling per connection profile
  • When loading a SQL script it's now possible to automatically detect the encoding
  • It's now possible to filter the output of WbVarList
  • It's now possible to pin a result tab so that it doesn't get closed even if append mode is not enabled
  • WbExport, WbImport, WbCopy and WbConfirm now support conditional execution
  • WbTriggerSource now also supports writing the source to a file
  • For Postgres, dependencies between triggers and tables are no shown in the DbExplorer and DbTree
  • For Postgres, functions defined as "returns setof refcursor" are now processed correctly when using "select * from function()"
  • For Postgres, it's now possible to import values into array columns if the source data is formatted as a Postgres array literal (WbImport and WbCopy)
  • A new annotation (@WbCrossTab) is available to create simple crosstabs (aka "pivot") from query results.
  • Improved editing of Postgres' hstore result columns.
  • For SQL Server, the object dependencies now include named default constraints and custom data types
  • Bug Fixes:
  • For Oracle the DDL for tables using reference partitioning was not generated correctly
  • In batch mode when specifying a connection profile using -profile, the setting to ignore drop errors from the profile was ignored
  • The width of the DbTree was limited if the DbExplorer panel was also displayed
  • For HSQLDB, BIT columns were not displayed correctly.
  • For Oracle, the DEDUPLICATION option was not shown for LOB columns
  • Auto completion did not overwrite a partial table (or column) name if that part was a SQL keyword.
  • Activating the object list filter in the DbExplorer by using the toolbar button did not work reliably.
  • Passing connection properties using -connectionProperties to WbCreateProfile did not work
  • When using a profile specific macro file, opening a new window did not always work.
  • When using an Oracle 12.x JDBC driver, materialized views were always reported as missing with WbSchemaDiff
  • It was no longer possible to select "As Is" for the built-in SQL formatter
  • Several features in the DbExplorer did not work for Amazon Redshift
  • Feedback from connect scripts was not always shown in the message tab
  • Error messages were not shown for errors that occurred in connect scripts
  • For Postgres, the remarks for indexes were not retrieved correctly if indexes with the same name existed in different schemas
  • The formatter did not treat the := operator properly for MySQL
  • For Postgres, the source of a table was not shown when an old (unsupported) version of Postgres was used
  • For SQL Server (and other DBMS supporting schemas and catalogs) the list of schemas was not properly refreshed when the database was changed in the DbExplorer's dropdowns
  • For Oracle, value literals for RAW columns where not created correctly
  • For Oracle, -clobAsFile for WbExport was not working for XML columns
  • For Oracle, overloaded procedures inside packages where no longer displayed.
  • For SQL Server, the source of procedures, functions and triggers was not displayed correctly in the DbExplorer for databases other then the default database of the connection.
  • When using -configDir in console mode the connection profiles were still loaded from the default location.
  • For Postgres, when generating scripts for tables and sequences the owner column for a sequence was not correctly generated.

New in SQL Workbench/J 121.5 Dev (Jan 17, 2017)

  • Enhancements:
  • Added basic support for EXAsol
  • Added support for SSH tunneling per connection profile
  • When loading a SQL script it's now possible to automatically detect the encoding
  • Bug Fixes:
  • Auto completion did not overwrite a partial table (or column) name if that part was a SQL keyword.
  • Activating the object list filter in the DbExplorer by using the toolbar button did not work reliably.
  • Passing connection properties using -connectionProperties to WbCreateProfile did not work
  • When using a profile specific macro file, opening a new window did not always work.
  • When using an Oracle 12.x JDBC driver, materialized views were always reported as missing with WbSchemaDiff

New in SQL Workbench/J 121.4 Dev (Dec 28, 2016)

  • Enhancements:
  • It's now possible filter the output of WbVarList
  • It's now possible to pin a result tab so that it doesn't get closed even if append mode is not enabled
  • WbExport, WbImport, WbCopy and WbConfirm now support conditional execution
  • Bug Fixes:
  • It was no longer possible to select "As Is" for the built-in SQL formatter
  • Several features in the DbExplorer did not work for Amazon Redshift
  • Feeback from connect scripts was not always shown in the message tab
  • Error messages were not shown for errors that occurred in connect scripts

New in SQL Workbench/J 121.3 Dev (Nov 21, 2016)

  • Enhancements:
  • WbTriggerSource now also supports writing the source to a file
  • For Postgres, dependencies between triggers and tables are no shown in the DbExplorer and DbTree
  • Bug Fixes:
  • For Postgres, the remarks for indexes were not retrieved correctly if indexes with the same name existed in different schemas
  • The formatter did not treat the := operator properly for MySQL
  • For Postgres, the source of a table was not shown when an old (unsupported) version of Postgres was used
  • For SQL Server (and other DBMS supporting schemas and catalogs) the list of schemas was not properly refreshed when the database was changed in the DbExplorer's dropdowns

New in SQL Workbench/J 121.2 Dev (Oct 19, 2016)

  • Enhancements:
  • For Postgres, functions defined as "returns setof refcursor" are now processed correctly when using "select * from"
  • Bug fixes:
  • For Oracle, value literals for RAW columns where not created correctly
  • For Oracle, -clobAsFile for WbExport was not working for XML columns

New in SQL Workbench/J 121.1 Dev (Oct 3, 2016)

  • Enhancements:
  • For Postgres it's now possible to import values into array columns if the source data is formatted as a Postgres array literal (WbImport and WbCopy)
  • A new annotation (@WbCrossTab) is available to create crosstabs (aka "pivot") from query results.
  • Improved editing of Postgres' hstore result columns.
  • For SQL Server, the object dependencies now include named default constraints and custom data types
  • Bug Fixes:
  • For Oracle, overloaded procedures inside packages where no longer displayed.
  • For SQL Server, the source of procedures, functions and triggers was not displayed correctly in the DbExplorer for databases other then the default database of the connection.
  • When using -configDir in console mode the connection profiles were still loaded from the default location.
  • For Postgres, when generating scripts for tables and sequences the owner column for a sequence was not correctly generated.

New in SQL Workbench/J 121 (Aug 1, 2016)

  • Bug Fixes:
  • Some DDL statements were not generated properly when changing tables or indexes in the DbExplorer
  • For Oracle, columns defined as TIMESTAMP WITH TIME ZONE or TIMESTAMP WITH LOCAL TIMEZONE where not displayed correctly
  • It was no longer possible to use a timestamp format without time for WbImport
  • When loading a new macro file, the macro menu was not updated.

New in SQL Workbench/J 120 (Aug 1, 2016)

  • Enhancements:
  • It's now possible to delete variables using wildcards
  • It's now possible to test the connection from the profile dialog
  • For Postgres, the generated source code for functions and custom aggregates now contains the new PARALLEL settings for Postgres 9.6
  • It's now possible to show a quick filter in the macro popup window
  • When searching for a JDBC driver class in the driver's jar file, available service registrations are used to speed up the searching.
  • It's now possible to disable icons in menus
  • For HSQLDB 2.3.4 synonyms are now displayed
  • It's now possible to configure the buttons on the toolbar
  • It's now possible to restore recently closed editor tabs
  • For Progress OpenEdge, squences and synonyms are now shown in the DbExplorer
  • It's now possible to associate variables with the connection profile and the workspace
  • For SAP HANA the source for synonyms are now shown
  • For SAP HANA dependency for tables, views, triggers, procedures and sequences are now shown in the DbExplorer and DbTree
  • A new command (WbGenerateFKScript) is available to generate the DDL for only the foreign key constraints.
  • For DB2 10.5 indexes based on expressions are now shown correctly
  • Bug Fixes:
  • For SQL Server, the source code for user defined object types with columns was incorrect.
  • For DBMS supporting catalogs and schemas, auto completion for large schemas was slow.
  • Fixed a problem where in rare cases, closing an editor tab could hang the application.
  • Ignoring the "Max Rows" setting in the DbExplorer's table data did not work any more
  • WbListMacros, WbDeleteMacro and WbDefineMacro were always using the default macro file
  • Timestamps with microseconds (.SSSSSS in the format) where not imported correctly with WbImport
  • For Postgres, the LEAKPROOF attribute was not included in the generated source code for functions
  • WbSchemaDiff incorrectly combined all tables to be dropped in a single tag
  • For Postgres, the format of hstore literals was not correct when exporting data as SQL statements
  • For Postgres, hstore columns could not be edited in a query result
  • The ALTER TABLE OWNER TO statement for Postgres was not created correctly
  • It wasn't possible to use -mode=Upsert or -mode=InsertIgnore with WbCopy
  • Parsing of comments in SQL statements is now more lenient with invalid (nested) comments
  • When changing the position of SQL tabs with files loaded, the Workspace was not saved properly
  • For Progress OpenEdge, the SQL generated for sequences was invalid
  • For Postgres, the implizit index for an exclusion constraint was incorrectly added to the souce of the table
  • The format of a hstore and array literals was not correct for generated SQL statements
  • For Oracle procedures from packages that contained only procedures without parameters were not displayed.
  • Implemented a workaround for the MariaDB JDBC driver that returns invalid object type names for tables ("BASE TABLE" instead of "TABLE")
  • Generate "DROP script with dependencies" was no longer working in the DbExplorer or DbTree
  • When using SQL Workbench in batch mode, passing quoted parameters on the command line did not work properly
  • The DDL for tables was not displayed when using Amazon Redshift
  • Using sqlwbconsole.sh together with -command or -script on a headless system did not work
  • The display for LVARCHAR and DATE columns was not always correct for Informix
  • Warnings that were reported by the JDBC driver after establishing the connection were sometimes shown in the generated DDL in the DbTree
  • The DDL for sequences in Oracle did not reflect the values for CYCLE and ORDER
  • Running PL/SQL in Oracle did not work if the option "Remove comments" was enabled in the connection profile
  • When using "Create DDL script" in the DbExplorer, the source for materialized views was generated twice
  • With certain Oracle driver versions, TYPEs where displayed twice in the DbExplorer or the DbTree
  • When exporting to text files, values containing the line delimiter were not quoted properly
  • With SQL Server, it was not possible to drop indexes from within the DbTree

New in SQL Workbench/J 119.5 Dev (Jul 4, 2016)

  • Enhancements:
  • It's now possible to delete variables using wildcards
  • It's now possible to test the connection from the profile dialog
  • Bug Fixes:
  • Fixed a problem where in rare cases, closing an editor tab could hang the application.
  • Ignoring the "Max Rows" setting in the DbExplorer's table data did not work any more
  • WbListMacros, WbDeleteMacro and WbDefineMacro were always using the default macro file

New in SQL Workbench/J 119.4 Dev (Jun 7, 2016)

  • Enhancements:
  • For Postgres, the generated source code for functions and custom aggregates now contains the new PARALLEL settings for Postgres 9.6
  • Bug fixes:
  • Timestamps with microseconds (.SSSSSS in the format) where not imported correctly with WbImport
  • For Postgres, the LEAKPROOF attribute was not included in the generated source code for functions
  • WbSchemaDiff incorrectly combined all tables to be dropped in a single tag
  • For Postgres, the format of hstore literals was not correct when exporting data as SQL statements
  • For Postgres, hstore columns could not be edited in a query result
  • The ALTER TABLE OWNER TO statement for Postgres was not created correctly

New in SQL Workbench/J 119.3 Dev (May 4, 2016)

  • Enhancements:
  • It's now possible to show a quick filter in the macro popup window
  • When searching for a JDBC driver class in the driver's jar file, available service registrations are used to speed up the searching.
  • Bug fixes:
  • It wasn't possible to use -mode=Upsert or -mode=InsertIgnore with WbCopy
  • Parsing of comments in SQL statements is now more lenient with invalid (nested) comments
  • When changing the position of SQL tabs with files loaded, the Workspace was not saved properly
  • For Progress OpenEdge, the SQL generated for sequences was invalid
  • For Postgres, the implizit index for an exclusion constraint was incorrectly added to the souce of the table
  • The format of a hstore and array literals was not correct for generated SQL statements
  • For Oracle procedures from packages that contained only procedures without parameters were not displayed.

New in SQL Workbench/J 119.2 Dev (Apr 4, 2016)

  • Enhancements:
  • It's now possible to disable icons in menus
  • For HSQLDB 2.3.4 synonyms are now displayed
  • It's now possible to configure the buttons on the toolbar
  • Bug Fixes:
  • Implemented a workaround for the MariaDB JDBC driver that returns invalid object type names for tables ("BASE TABLE" instead of "TABLE")
  • Generate "DROP script with dependencies" was no longer working in the DbExplorer or DbTree

New in SQL Workbench/J 119.1 Dev (Mar 7, 2016)

  • Enhancements:
  • (119.1) It's now possible to restore recently closed editor tabs
  • (119.1) For Progress OpenEdge, squences and synonyms are now shown in the DbExplorer
  • (119.1) It's now possible to associate variables with the connection profile and the workspace
  • (119.1) For SAP HANA the source for synonyms are now shown
  • (119.1) For SAP HANA dependency for tables, views, triggers, procedures and sequences are now shown in the DbExplorer and DbTree
  • (119.1) A new command (WbGenerateFKScript) is available to generate the DDL for only the foreign key constraints.
  • (119.1) For DB2 10.5 indexes based on expressions are now shown correctly
  • Bug fixes:
  • (119.1) When using SQL Workbench in batch mode, passing quoted parameters on the command line did not work properly
  • (119.1) The DDL for tables was not displayed when using Amazon Redshift
  • (119.1) Using sqlwbconsole.sh together with -command or -script on a headless system did not work
  • (119.1) The display for LVARCHAR and DATE columns was not always correct for Informix
  • (119.1) Warnings that were reported by the JDBC driver after establishing the connection were sometimes shown in the generated DDL in the DbTree
  • (119.1) The DDL for sequences in Oracle did not reflect the values for CYCLE and ORDER
  • (119.1) Running PL/SQL in Oracle did not work if the option "Remove comments" was enabled in the connection profile
  • (119.1) When using "Create DDL script" in the DbExplorer, the source for materialized views was generated twice
  • (119.1) With certain Oracle driver versions, TYPEs where displayed twice in the DbExplorer or the DbTree
  • (119.1) When exporting to text files, values containing the line delimiter were not quoted properly
  • (119.1) With SQL Server, tt was not possible to drop indexes from within the DbTree
  • (119.1) Passwords are no longer trimmed

New in SQL Workbench/J 119 (Jan 31, 2016)

  • Enhancements:
  • It's now possible to display the column's data type in the header of the result table
  • When importing all files from a directory, WbImport now provided pre-defined variables with the filename
  • It's now possible to configure auto-saving of external files independently from auto-saving the workspace.
  • A new command WbMessage to display a simple message is available.
  • It's not possible to search text in all open editors (Tools -> Search all tabs)
  • For some DBMS, the DbTree and DbExplorer now show the dependencies between objects
  • For DB2/iSeries table and column comments can now be retrieved from the system catalogs instead of using the JDBC driver.
  • For Postgres it is now possible to manually control transactions using BEGIN .. COMMIT when the connection is set to autocommit
  • The list of tables in the DbTree is now sorted to work around bugs in JDBC driver that do not properly sort the list of tables
  • For DBMS that support it, two new modes have been added to WbImport: -upsert and -insertIgnore using native "UPSERT" functionality if available
  • For Firebird the SQL source of external tables is now generated correctly.
  • An new command WbGenerateImpTable is available to infer the structure of a table from an import file
  • The command line parameter -vardef has been deprecated and replaced with -variable and -varFile
  • It's now possible to provide tags for each connection profile. The quickfilter will then use the defined tags for filtering the displayed profiles.
  • Connection parameters specified on the command line now have precedence over the properties defined through a Liquibase defaults file (specified through -lbDefaults)
  • It's now possible to enable the use of Oracle's DBMS_METADATA for source code retrieval for different types of objects
  • The tooltip shown for result tabs can now be configured (Options -> Data display)
  • For the internal SQL formatter, it's now possible to configure the case in which data type names are written
  • A new action to run all SQL statements up to the cursor position is available
  • The error dialog that is displayed when running a script can now be configured to also include the error message or the statement that failed
  • Improved display of packages in the DbTree for Oracle and Firebird
  • Bug Fixes:
  • Showing rowcounts in the DbTree did not work for DB2
  • "Generate Delete Script" for a selection of rows in the result did not display the generated script.
  • When reloading the whole DbTree while a node was selected, would show elements (e.g. tables) twice
  • CREATE TABLE statements were not formatted correctly if the name consisted of quoted and unquoted parts (e.g. unquoted schema and quoted table name)
  • The error dialog when running running multiple statements was not displayed on Linux if the option "Include error message" was selected in the "SQL Execution" options
  • Improved the performance when retrieving table definitions and table source for Oracle
  • For Postgres, rules defined on a table where shown twice in the generated DDL script
  • Retrieving additional column information in the DbExplorer failed on SQL Server if a non-standard database collation was used
  • The DDL for constraints or comments where identifiers required quoting was not correct
  • The formatter would not process statements correctly where a sub select using function calls in the WHERE clause was used in a JOIN condition
  • When using "Remove Comments" for a connection profile, the error position inside a statement was not shown correctly for some DBMS
  • For Oracle, when using "Trim CHAR data" and editing tables where the primary key column was defined as CHAR, updating the result did not work.
  • Toggle comment did not toggle correctly when some lines were already commented and some not
  • The messages shown when using conditional execution with WbInclude did not properly include the variable name or value
  • For Oracle the tablespace of materialized views was not shown in the generated SQL (Fix contributed by Franz Mayer)
  • It was not possible to work with SAVEPOINTs correctly
  • Table definitions for tables with VARCHAR columns were not displayed for Oracle
  • Disabling the check for read-only columns did not work for all JDBC drivers
  • WbCopy now stops with an error if -targetTable is specified and -sourceTable is used to specify multiple tables
  • For DB2 the names of PK constraints where not properly qualified with a schema if needed
  • Sometimes using "Execute current" would not correctly identify the current statement and run the first statement from the editor
  • WbImport using -insert,update did not work for multi-column primary keys when not all PK columns where part of the input file
  • When a variable value contained the prefix and the suffix of the variable pattern, using such a variable would result in SQL Workbench/J locking up
  • Reloading a trigger source in the DbExplorer's trigger panel did not work
  • For Oracle the source of a trigger that had a trailing space in the name was not retrieved
  • For Oracle the position of errors in regular (non-PL/SQL) DDL statements was not shown
  • When starting SQL Workbench on a headless system, using "java -jar" using the -script parameter did not work any longer
  • For SQL Server 2000, retrieving the source of a view did not work
  • For SQL Server, generating "dummy DML" for tables with "bit" columns did not work
  • For MySQL the option "on update" for a default value was not shown in the generated SQL source for a table

New in SQL Workbench/J 118.7 Dev (Dec 7, 2015)

  • Enhancements:
  • It's not possible to search text in all open editors (Tools -> Search all tabs)
  • For some DBMS, the DbTree and DbExplorer now show the dependencies between objects
  • Bug Fixes:
  • For Postgres, rules defined on a table where shown twice in the generated DDL script
  • Retrieving additional column information in the DbExplorer failed on SQL Server if a non-standard database collation was used
  • The DDL for constraints or comments where identifiers required quoting was not correct

New in SQL Workbench/J 118.6 Dev (Nov 23, 2015)

  • Enhancements:
  • For DB2/iSeries table and column comments can now be retrieved from the system catalogs instead of using the JDBC driver.
  • For Postgres it is now possible to manually control transactions using BEGIN .. COMMIT when the connection is set to autocommit
  • The list of tables in the DbTree is now sorted to work around bugs in JDBC driver that do not properly sort the list of tables
  • Bug Fixes:
  • The formatter would not process statements correctly where a sub select using function calls in the WHERE clause was used in a JOIN condition
  • When using "Remove Comments" for a connection profile, the error position inside a statement was not shown correctly for some DBMS
  • For Oracle, when using "Trim CHAR data" and editing tables where the primary key column was defined as CHAR, updating the result did not work.
  • Toggle comment did not toggle correctly when some lines were already commented and some not
  • The messages shown when using conditional execution with WbInclude did not properly include the variable name or value
  • For Oracle the tablespace of materialized views was not shown in the generated SQL (Fix contributed by Franz Mayer)
  • It was not possible to work with SAVEPOINTs correctly

New in SQL Workbench/J 118.5 Dev (Nov 7, 2015)

  • Bug Fixes:
  • Table definitions for tables with VARCHAR columns were not displayed for Oracle

New in SQL Workbench/J 118.4 Dev (Nov 7, 2015)

  • Bug Fixes:
  • Disabling the check for read-only columns did not work for all JDBC drivers
  • WbCopy now stops with an error if -targetTable is specified and -sourceTable is used to specify multiple tables
  • For DB2 the names of PK constraints where not properly qualified with a schema if needed

New in SQL Workbench/J 118.3 Dev (Oct 12, 2015)

  • Enhancements:
  • For DBMS that support it, two new modes have been added to WbImport: -upsert and -insertIgnore using native "UPSERT" functionality if available
  • For Firebird the SQL source of external tables is now generated correctly.
  • An new command WbGenerateImpTable is available to infer the structure of a table from an import file
  • Bug Fixes:
  • Sometimes using "Execute current" would not correctly identify the current statement and run the first statement from the editor
  • WbImport using -insert,update did not work for multi-column primary keys when not all PK columns where part of the input file

New in SQL Workbench/J 118.2 Dev (Oct 2, 2015)

  • Enhancements:
  • The command line parameter -vardef has been deprecated and replaced with -variable and -varFile
  • For DBMS that support it, WbImport mode=insert,update will now use the native "UPSERT" syntax instead of two statements (Postgres 9.5, Firebird, H2, MySQL
  • It's now possible to provide tags for each connection profile. The quickfilter will then use the defined tags for filtering the displayed profiles.
  • Connection parameters specified on the command line now have precedence over the properties defined through a Liquibase defaults file (specified through -lbDefaults)
  • Bug Fixes:
  • When a variable value contained the prefix and the suffix of the variable pattern, using such a variable would result in SQL Workbench/J locking up

New in SQL Workbench/J 118.1 Dev (Sep 21, 2015)

  • Enhancements:
  • Added support to include computed columns for MySQL 5.7 in the generated CREATE TABLE source
  • The source and target connection for WbCopy, WbSchemaDiff and WbDataDiff can now be specified on the command line when starting the application. In that case it's not necessary to provide them to the respective commands
  • A new action to run all SQL statements in the editor starting from the cursor position is available
  • It's now possible to use OS environment variable or Java properties in the username of a connection profile.
  • For Postgres, "COPY .. FROM stdin" with the data after the statement is now supported
  • It's now possible to define external tools to format SQL
  • For decimal values WbExport now supports the parameters -fixedDigits and -maxDigits.
  • It's now possible to enable editing (and running) the generated SQL source code in the DbExplorer directly.
  • For Oracle, messages from dbms_output are now always shown if a procedure is started using EXECUTE regardless of the setting of "set serveroutput"
  • Added some basic support for SAP HANA.
  • For Excel imports, the option -stringDates=true retrieves Dates as formatted strings and converts them using the date/timestamp format specified in the WbImport command rathr then reading a converted value from the Excel file.
  • For Excel exports, the start location where the data should be written to in the excel file can now be specified using the -offset parameter
  • The application to be used for displaying the logfile can now be configured.
  • WbSchemaReport has a new (boolean) option -writeFullSource to write a valid CREATE VIEW statement to the XML output in case the DBMS does not store the complete SQL
  • Results can now automatically be refreshed either through an annotation or through the context menu of the result tab
  • The macros in a group can now be sorted alphabetically
  • The quoting of the null values for text exports can now be enabled through the option -quoteNulls
  • The quoting of the header for text exports can now be enabled through the option -quoteHeader
  • The statement at the cursor position can now be copied directly into the clipboard (Code Tools -> Copy current statement)
  • For Oracle, the partitions of a materialized view are now shown in the source code
  • WbImport and WbCopy (including the DataPumper) can now be used to insert data into a view
  • For tables without a primary key, unique indexes that contain nullable columns are no longer considered when generating DML statements
  • For Vertica tables and views from the schema "v_internal" are now show in the DbExplorer (contributed by Tatiana Saltykova)
  • It's now possible to define the terminator string for "Copy Code Snippet" through the config property "workbench.clipcreate.codeend"
  • Macros and macro groups can now be excluded from the popup window
  • Bug fixes:
  • The menu to select data from referenced/referencing tables in a result set was disabled when switching to the DbExplorer and back to the SQL panel
  • -syncDelete with WbCopy did not work if alternate key columns were specified using -keyColumns
  • Fixed retrieval of stored procedures for DB2 on AS/400 (thanks to Francesco)
  • Fixed detection of update columns for multi-table result sets when the name of the PK columns is not uniuqe in the result set
  • For Firebird the source code for procedures with multiple out parameters was not generated correctly.
  • For PostgreSQL, SQL statements to create the comment for functions with OUT parameters were not generated correctly.
  • When running a single command in batch mode, the error status was not returned correctly to the operating system
  • WbExport no longer uses the GUI defaults for decimal digits. The default is now to always export all digits, unless the new -maxDigits parameter is used
  • For MySQL, when multiple tables with the same name in different databases had triggers defined, all triggers where visible for each table in the DbExplorer
  • When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed
  • WbConnect would prompt for a password for profiles with an empty password even if "Save password" was enabled
  • No parameter prompt was shown for INOUT parameters when running procedures using WbCall
  • Implemented a workaround for an Informix driver bug where index information for the wrong table was returned
  • Double quotes in column values were not escaped properly when creating a JSON export
  • When switching between views and tables in the DbExplorer the foreign key tabs were no longer shown for SQL Server
  • Compile errors for Oracle's PL/SQL where not always shown correctly
  • Parameters for SQL Workbench commands with nested single and double quotes that included SQL comments were not evaluated properly
  • Fixed restoring of the window position when using multiple monitors
  • Generating the SQL source for computed columns did not work for SQL Server 2000
  • The SQL source for inherited tables in Postgres was not generated correctly.
  • The SQL source for sequences for SQL Server was not generated correctly.
  • "Create DDL script" in the DbExplorer would generate the source code for sequnces twice
  • Nano (or micro) seconds from timestamp values where not displayed correctly
  • When opening a file, it is now checked if the selected encoding matches the one from the file
  • Each time when reloading a result that uses the @WbMacro annotation, the macro sub-menu would be added to the context menu again
  • For Informix, default clauses for columns were not generated properly in the DbExplorer
  • For Informix, index definitions were not always displayed correctly
  • Overloaded functions and procedures where not handled correctly by WbSchemaDiff
  • For Postgres the wrong DROP FUNCTION statement was generated if a function contained OUT parameter
  • Scripts that contained statements including character literals with a backslash were not always parsed correctly.
  • When WbImport did not find any matching columns, the error message did not include the (faulty) source file
  • Fixed the display of the profile tree with large fonts
  • The DataPumper did not work if source and destination had a different number of columns
  • The generated WbCopy command in the DataPumper was not correct when a query was used as the source
  • XLSX export did not work if the output file was specified without an extension
  • Fixed some issues with restoring the window position on multi-monitor systems
  • Fixed some issues where the alternate delimiter was incrrectly used when running scripts through WbInclude
  • When importing multiple Excel files with WbImport using the -sourceDir argument, only the first file was imported
  • The abbreviated WbInclude using @ only worked with Oracle
  • The minutes for columns of type "timestamp with time zone" where not always displayed correctly in Oracle
  • Oracle's autotrace did not work in console mode
  • Using pgpass for Postgres connections did not work in console or batch mode
  • WbProcSource would not show the code for a packaged procedure in Oracle
  • Fixed some problems in the SQL formatter that would lead to invalid SQL syntax
  • XSLT transformations failed when the output filename didn't include a directory
  • Disabling "Filter while typing" in the DbExplorer was not possible
  • -targetConnection and -referenceConnection for WbSchemaDiff and WbDataDiff were broken

New in SQL Workbench/J 118 (Aug 17, 2015)

  • Enhancements:
  • Added support to include computed columns for MySQL 5.7 in the generated CREATE TABLE source
  • The source and target connection for WbCopy, WbSchemaDiff and WbDataDiff can now be specified on the command line when starting the application. In that case it's not necessary to provide them to the respective commands
  • A new action to run all SQL statements in the editor starting from the cursor position is available
  • It's now possible to use OS environment variable or Java properties in the username of a connection profile.
  • For Postgres, "COPY .. FROM stdin" with the data after the statement is now supported
  • It's now possible to define external tools to format SQL
  • For decimal values WbExport now supports the parameters -fixedDigits and -maxDigits.
  • It's now possible to enable editing (and running) the generated SQL source code in the DbExplorer directly.
  • For Oracle, messages from dbms_output are now always shown if a procedure is started using EXECUTE regardless of the setting of "set serveroutput"
  • Added some basic support for SAP HANA.
  • For Excel imports, the option -stringDates=true retrieves Dates as formatted strings and converts them using the date/timestamp format specified in the WbImport command rathr then reading a converted value from the Excel file.
  • For Excel exports, the start location where the data should be written to in the excel file can now be specified using the -offset parameter
  • The application to be used for displaying the logfile can now be configured.
  • WbSchemaReport has a new (boolean) option -writeFullSource to write a valid CREATE VIEW statement to the XML output in case the DBMS does not store the complete SQL
  • Results can now automatically be refreshed either through an annotation or through the context menu of the result tab
  • The macros in a group can now be sorted alphabetically
  • The quoting of the null values for text exports can now be enabled through the option -quoteNulls
  • The quoting of the header for text exports can now be enabled through the option -quoteHeader
  • The statement at the cursor position can now be copied directly into the clipboard (Code Tools -> Copy current statement)
  • For Oracle, the partitions of a materialized view are now shown in the source code
  • WbImport and WbCopy (including the DataPumper) can now be used to insert data into a view
  • For tables without a primary key, unique indexes that contain nullable columns are no longer considered when generating DML statements
  • For Vertica tables and views from the schema "v_internal" are now show in the DbExplorer (contributed by Tatiana Saltykova)
  • It's now possible to define the terminator string for "Copy Code Snippet" through the config property "workbench.clipcreate.codeend"
  • Macros and macro groups can now be excluded from the popup window
  • Bug Fixes:
  • The menu to select data from referenced/referencing tables in a result set was disabled when switching to the DbExplorer and back to the SQL panel
  • -syncDelete with WbCopy did not work if alternate key columns were specified using -keyColumns
  • Fixed retrieval of stored procedures for DB2 on AS/400 (thanks to Francesco)
  • Fixed detection of update columns for multi-table result sets when the name of the PK columns is not uniuqe in the result set
  • For Firebird the source code for procedures with multiple out parameters was not generated correctly.
  • For PostgreSQL, SQL statements to create the comment for functions with OUT parameters were not generated correctly.
  • When running a single command in batch mode, the error status was not returned correctly to the operating system
  • WbExport no longer uses the GUI defaults for decimal digits. The default is now to always export all digits, unless the new -maxDigits parameter is used
  • For MySQL, when multiple tables with the same name in different databases had triggers defined, all triggers where visible for each table in the DbExplorer
  • When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed
  • WbConnect would prompt for a password for profiles with an empty password even if "Save password" was enabled
  • No parameter prompt was shown for INOUT parameters when running procedures using WbCall
  • Implemented a workaround for an Informix driver bug where index information for the wrong table was returned
  • Double quotes in column values were not escaped properly when creating a JSON export
  • When switching between views and tables in the DbExplorer the foreign key tabs were no longer shown for SQL Server
  • Compile errors for Oracle's PL/SQL where not always shown correctly
  • Parameters for SQL Workbench commands with nested single and double quotes that included SQL comments were not evaluated properly
  • Fixed restoring of the window position when using multiple monitors
  • Generating the SQL source for computed columns did not work for SQL Server 2000
  • The SQL source for inherited tables in Postgres was not generated correctly.
  • The SQL source for sequences for SQL Server was not generated correctly.
  • "Create DDL script" in the DbExplorer would generate the source code for sequnces twice
  • Nano (or micro) seconds from timestamp values where not displayed correctly
  • When opening a file, it is now checked if the selected encoding matches the one from the file
  • Each time when reloading a result that uses the @WbMacro annotation, the macro sub-menu would be added to the context menu again
  • For Informix, default clauses for columns were not generated properly in the DbExplorer
  • For Informix, index definitions were not always displayed correctly
  • Overloaded functions and procedures where not handled correctly by WbSchemaDiff
  • For Postgres the wrong DROP FUNCTION statement was generated if a function contained OUT parameter
  • Scripts that contained statements including character literals with a backslash were not always parsed correctly.
  • When WbImport did not find any matching columns, the error message did not include the (faulty) source file
  • Fixed the display of the profile tree with large fonts
  • The DataPumper did not work if source and destination had a different number of columns
  • The generated WbCopy command in the DataPumper was not correct when a query was used as the source
  • XLSX export did not work if the output file was specified without an extension
  • Fixed some issues with restoring the window position on multi-monitor systems
  • Fixed some issues where the alternate delimiter was incrrectly used when running scripts through WbInclude
  • When importing multiple Excel files with WbImport using the -sourceDir argument, only the first file was imported
  • The abbreviated WbInclude using @ only worked with Oracle
  • The minutes for columns of type "timestamp with time zone" where not always displayed correctly in Oracle
  • Oracle's autotrace did not work in console mode
  • Using pgpass for Postgres connections did not work in console or batch mode
  • WbProcSource would not show the code for a packaged procedure in Oracle
  • Fixed some problems in the SQL formatter that would lead to invalid SQL syntax
  • XSLT transformations failed when the output filename didn't include a directory
  • Disabling "Filter while typing" in the DbExplorer was not possible
  • -targetConnection and -referenceConnection for WbSchemaDiff and WbDataDiff were broken

New in SQL Workbench/J 117.9 Dev (Aug 10, 2015)

  • Enhancements:
  • Added support to include computed columns for MySQL 5.7 in the generated CREATE TABLE source
  • The source and target connection for WbCopy, WbSchemaDiff and WbDataDiff can now be specified on the command line when starting the application. In that case it's not necessary to provide them to the respective commands
  • A new action to run all SQL statements in the editor starting from the cursor position is available
  • Bug Fixes:
  • -syncDelete with WbCopy did not work if alternate key columns were specified using -keyColumns
  • Fixed retrieval of stored procedures for DB2 on AS/400 (thanks to Francesco)
  • Fixed detection of update columns for multi-table result sets when the name of the PK columns is not uniuqe in the result set
  • For Firebird the source code for procedures with multiple out parameters was not generated correctly.

New in SQL Workbench/J 117.8 Dev (Jul 14, 2015)

  • Enhancements:
  • It's now possible to use OS environment variable or Java properties in the username of a connection profile.
  • For Postgres, "COPY .. FROM stdin" with the data after the statement is now supported
  • Bug Fixes:
  • For PostgreSQL, SQL statements to create the comment for functions with OUT parameters were not generated correctly.
  • When running a single command in batch mode, the error status was not returned correctly to the operating system

New in SQL Workbench/J 117.7 Dev (Jun 22, 2015)

  • Enhancements:
  • It's now possible to define external tools to format SQL
  • For decimal values WbExport now supports the parameters -fixedDigits and -maxDigits.
  • It's now possible to enable editing (and running) the generated SQL source code in the DbExplorer directly.
  • Bug Fixes:
  • WbExport no longer uses the GUI defaults for decimal digits. The default is now to always export all digits, unless the new -maxDigits parameter is used
  • For MySQL, when multiple tables with the same name in different databases had triggers defined, all triggers where visible for each table in the DbExplorer
  • When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed

New in SQL Workbench/J 117.5 Dev (May 16, 2015)

  • ENHANCEMENTS:
  • Added some basic support for SAP HANA.
  • For Excel imports, the option -stringDates=true retrieves Dates as formatted strings and converts them using the date/timestamp format specified in the WbImport command rathr then reading a converted value from the Excel file.
  • For Excel exports, the start location where the data should be written to in the excel file can now be specified using the -offset parameter
  • The application to be used for displaying the logfile can now be configured.
  • WbSchemaReport has a new (boolean) option -writeFullSource to write a valid CREATE VIEW statement to the XML output in case the DBMS does not store the complete SQL
  • Results can now automatically be refreshed either through an annotation or through the context menu of the result tab
  • The macros in a group can now be sorted alphabetically
  • The quoting of the null values for text exports can now be enabled through the option -quoteNulls
  • The quoting of the header for text exports can now be enabled through the option -quoteHeader
  • The statement at the cursor position can now be copied directly into the clipboard (Code Tools -> Copy current statement)
  • For Oracle, the partitions of a materialized view are now shown in the source code
  • WbImport and WbCopy (including the DataPumper) can now be used to insert data into a view
  • For tables without a primary key, unique indexes that contain nullable columns are no longer considered when generating DML statements
  • WbExport now supports the parameter -decimalDigits to control the (fixed) number of digits written to the export file
  • For Vertica tables and views from the schema "v_internal" are now show in the DbExplorer (contributed by Tatiana Saltykova)
  • It's now possible to define the terminator string for "Copy Code Snippet" through the config property "workbench.clipcreate.codeend"
  • Macros and macro groups can now be excluded from the popup window
  • BUG FIXES:
  • Parameters for SQL Workbench commands with nested single and double quotes that included SQL comments were not evaluated properly
  • Fixed restoring of the window position when using multiple monitors
  • Generating the SQL source for computed columns did not work for SQL Server 2000
  • The SQL source for inherited tables in Postgres was not generated correctly.
  • The SQL source for sequences for SQL Server was not generated correctly.
  • "Create DDL script" in the DbExplorer would generate the source code for sequnces twice
  • Nano (or micro) seconds from timestamp values where not displayed correctly
  • When opening a file, it is now checked if the selected encoding matches the one from the file
  • Each time when reloading a result that uses the @WbMacro annotation, the macro sub-menu would be added to the context menu again
  • For Informix, default clauses for columns were not generated properly in the DbExplorer
  • For Informix, index definitions were not always displayed correctly
  • Overloaded functions and procedures where not handled correctly by WbSchemaDiff
  • For Postgres the wrong DROP FUNCTION statement was generated if a function contained OUT parameter
  • Scripts that contained statements including character literals with a backslash were not always parsed correctly.
  • When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed
  • When WbImport did not find any matching columns, the error message did not include the (faulty) source file
  • Fixed the display of the profile tree with large fonts
  • The DataPumper did not work if source and destination had a different number of columns
  • The generated WbCopy command in the DataPumper was not correct when a query was used as the source
  • XLSX export did not work if the output file was specified without an extension
  • Fixed some issues with restoring the window position on multi-monitor systems
  • Fixed some issues where the alternate delimiter was incrrectly used when running scripts through WbInclude
  • When importing multiple Excel files with WbImport using the -sourceDir argument, only the first file was imported
  • The abbreviated WbInclude using @ only worked with Oracle
  • The minutes for columns of type "timestamp with time zone" where not always displayed correctly in Oracle
  • Oracle's autotrace did not work in console mode
  • Using pgpass for Postgres connections did not work in console or batch mode
  • WbProcSource would not show the code for a packaged procedure in Oracle
  • Fixed some problems in the SQL formatter that would lead to invalid SQL syntax
  • XSLT transformations failed when the output filename didn't include a directory
  • Disabling "Filter while typing" in the DbExplorer was not possible
  • -targetConnection and -referenceConnection for WbSchemaDiff and WbDataDiff were broken

New in SQL Workbench/J 117.4 Dev (Apr 20, 2015)

  • Enhancements:
  • For Excel imports, the option -stringDates=true retrieves Dates as formatted strings and converts them using the date/timestamp format specified in the WbImport command rathr then reading a converted value from the Excel file.
  • For Excel exports, the start location where the data should be written to in the excel file can now be specified using the -offset parameter
  • The application to be used for displaying the logfile can now be configured.
  • Bug Fixes:
  • The SQL source for sequences for SQL Server was not generated correctly.
  • "Create DDL script" in the DbExplorer would generate the source code for sequnces twice
  • Nano (or micro) seconds from timestamp values where not displayed correctly
  • When opening a file, it is now checked if the selected encoding matches the one from the file
  • Each time when reloading a result that uses the @WbMacro annotation, the macro sub-menu would be added to the context menu again
  • For Informix, default clauses for columns were not generated properly in the DbExplorer
  • For Informix, index definitions were not always displayed correctly

New in SQL Workbench/J 117.3 Dev (Mar 16, 2015)

  • Enhacements:
  • (117.3) WbSchemaReport has a new (boolean) option -writeFullSource to write a valid CREATE VIEW statement to the XML output in case the DBMS does not store the complete SQL
  • (117.3) Results can now automatically be refreshed either through an annotation or through the context menu of the result tab
  • (117.2) The macros in a group can now be sorted alphabetically
  • (117.2) The quoting of the null values for text exports can now be enabled through the option -quoteNulls
  • (117.2) The quoting of the header for text exports can now be enabled through the option -quoteHeader
  • (117.2) The statement at the cursor position can now be copied directly into the clipboard (Code Tools -> Copy current statement)
  • (117.2) For Oracle, the partitions of a materialized view are now shown in the source code
  • (117.2) WbImport and WbCopy (including the DataPumper) can now be used to insert data into a view
  • (117.2) For tables without a primary key, unique indexes that contain nullable columns are no longer considered when generating DML statements
  • (117.1) WbExport now supports the parameter -decimalDigits to control the (fixed) number of digits written to the export file
  • (117.1) For Vertica tables and views from the schema "v_internal" are now show in the DbExplorer (contributed by Tatiana Saltykova)
  • (117.1) It's now possible to define the terminator string for "Copy Code Snippet" through the config property "workbench.clipcreate.codeend"
  • (117.1) Macros and macro groups can now be excluded from the popup window
  • Bug fixes:
  • (117.3) Overloaded functions and procedures where not handled correctly by WbSchemaDiff
  • (117.3) For Postgres the wrong DROP FUNCTION statement was generated if a function contained OUT parameter
  • (117.3) Scripts that contained statements including character literals with a backslash were not always parsed correctly.
  • (117.2) When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed
  • (117.2) When WbImport did not find any matching columns, the error message did not include the (faulty) source file
  • (117.2) Fixed the display of the profile tree with large fonts
  • (117.2) The DataPumper did not work if source and destination had a different number of columns
  • (117.2) The generated WbCopy command in the DataPumper was not correct when a query was used as the source
  • (117.2) XLSX export did not work if the output file was specified without an extension
  • (117.2) Fixed some issues with restoring the window position on multi-monitor systems
  • (117.2) Fixed some issues where the alternate delimiter was incrrectly used when running scripts through WbInclude
  • (117.2) When importing multiple Excel files with WbImport using the -sourceDir argument, only the first file was imported
  • (117.1) The abbreviated WbInclude using @ only worked with Oracle
  • (117.1) The minutes for columns of type "timestamp with time zone" where not always displayed correctly in Oracle
  • (117.1) Oracle's autotrace did not work in console mode
  • (117.1) Using pgpass for Postgres connections did not work in console or batch mode
  • (117.1) WbProcSource would not show the code for a packaged procedure in Oracle
  • (117.1) Fixed some problems in the SQL formatter that would lead to invalid SQL syntax
  • (117.1) XSLT transformations failed when the output filename didn't include a directory
  • (117.1) Disabling "Filter while typing" in the DbExplorer was not possible
  • (117.1) -targetConnection and -referenceConnection for WbSchemaDiff and WbDataDiff were broken

New in SQL Workbench/J 117.2 Dev (Mar 3, 2015)

  • Enhancements:
  • The macros in a group can now be sorted alphabetically
  • The quoting of the null values for text exports can now be enabled through the option -quoteNulls
  • The quoting of the header for text exports can now be enabled through the option -quoteHeader
  • The statement at the cursor position can now be copied directly into the clipboard (Code Tools -> Copy current statement)
  • For Oracle, the partitions of a materialized view are now shown in the source code
  • WbImport and WbCopy (including the DataPumper) can now be used to insert data into a view
  • For tables without a primary key, unique indexes that contain nullable columns are no longer considered when generating DML statements
  • Bug Fixes:
  • When importing multiple files using -usePgCopy and one file generated an error, the previous import was not committed
  • When WbImport did not find any matching columns, the error message did not include the (faulty) source file
  • Fixed the display of the profile tree with large fonts
  • The DataPumper did not work if source and destination had a different number of columns
  • The generated WbCopy command in the DataPumper was not correct when a query was used as the source
  • XLSX export did not work if the output file was specified without an extension
  • Fixed some issues with restoring the window position on multi-monitor systems
  • Fixed some issues where the alternate delimiter was incrrectly used when running scripts through WbInclude

New in SQL Workbench/J 117.1 Dev (Feb 6, 2015)

  • ENHANCEMENTS:
  • (117.1) WbExport now supports the parameter -decimalDigits to control the (fixed) number of digits written to the export file
  • (117.1) For Vertica tables and views from the schema "v_internal" are now show in the DbExplorer (contributed by Tatiana Saltykova)
  • (117.1) It's now possible to define the terminator string for "Copy Code Snippet" through the config property "workbench.clipcreate.codeend"
  • (117.1) Macros and macro groups can now be excluded from the popup window
  • BUG FIXES:
  • (117.1) The abbreviated WbInclude using @ only worked with Oracle
  • (117.1) The minutes for columns of type "timestamp with time zone" where not always displayed correctly in Oracle
  • (117.1) Oracle's autotrace did not work in console mode
  • (117.1) Using pgpass for Postgres connections did not work in console or batch mode
  • (117.1) WbProcSource would not show the code for a packaged procedure in Oracle
  • (117.1) Fixed some problems in the SQL formatter that would lead to invalid SQL syntax
  • (117.1) XSLT transformations failed when the output filename didn't include a directory
  • (117.1) Disabling "Filter while typing" in the DbExplorer was not possible
  • (117.1) -targetConnection and -referenceConnection for WbSchemaDiff and WbDataDiff were broken

New in SQL Workbench/J 117 (Feb 6, 2015)

  • ENHANCEMENTS:
  • Added support for triggers and stored procedures in Teradata
  • When defining a variable a list of possible values can be specified to be used when prompting for the variable value
  • For Oracle the generated table source will now contain LOB storage parameters.
  • It is now possible to put macros into the context menu of a result through the @WbMacro annotation
  • When using the console on Linux, the window title of the terminal window will now show the name of current profile.
  • For Postgres, SQL Workbench now reads the contents of .pgpass to retrieve passwords if the password is not stored in the connection profile.
  • Variables can now be displayed in the order they were defined during prompting (rather than sorted alphabetically) by setting the config property workbench.sql.parameter.prompt.sort to false
  • When a connection profile specified with -profile rqeuires the input of a username or the password, only the input dialog is displayed without the profile dialog
  • It's now possible to define a default (global) alternate delimiter based on the DBMS.
  • The DbExplorer's data tab now limits the number of rows through the generated SQL statement for DBMS that support e.g. "LIMIT" or similar operators
  • When using Oracle it's now possible to mix standard delimiter and alternate delimiter in a single script.
  • It's now possible to pass a SQL statement through the -command parameter using Linux "Here Documents"
  • WbRowCount now has an option to exclude some columns from the result
  • The amount of details retrieved from the database when editing a result set can now be reduced through a configuration property. Refer to the Chapter "Advanced configuration options" in the manual for details.
  • The meta information retrieved to enable editing a result set can now optionally taken from the completion cache.
  • The filter value of the DbExplorer's table list can now optionally be used to limit the number of tables retrieved.
  • WbGrepData can now search in BLOB columns if an encoding is specified how the binary data should be converted to character data. The old parameter -excludeLobs has been deprecated.
  • When using "Execute current" to run WbExport that has not -sourceTable argument and the next statement in the editor is a SELECT, the export is now started automatically
  • When configuring a JDBC driver, the dialog to select the approriate class no longer displays non-usable (=abstract) classes
  • For Vertica, the DbExplorer now displays the projections instead of indexes (thanks to Tatiana for the contribution)
  • WbCopy, WbSchemaDiff and WbDataDiff can now be used without pre-defined connection profiles
  • "Columns to Rows" now creates only a single result with as many columns as rows were selected
  • It's now possible to select multiple types individually in the dropdown of the DbExplorer
  • WbExport now has additional options to escape control characters and BLOB data such that the output file can be imported using Postgres' COPY statement
  • The parser now understand Postgres' "dollar quoting" and thus removes the need to use the alternate delimiter for Postgres
  • The ability to specify an alternate delimiter as "single line" has been removed. The alternate delimiter is now always assumed to be on a single line
  • It's now possible to load a different macro file for each connection
  • The macro popup window can now be configure to be closed using the ESC key
  • For Oracle and SQL Server the DbExplorer now shows if a foreign key is enabled
  • WbRunLB will now also read scripts included with the tag
  • It is now possible to copy the current result as DbUnit XML to the clipboard. Thanks to Brian for the contribution
  • WbGenerateScript now supports the -exclude parameter
  • For Firebird 3.0 the source code of procedures and packages is now displayed
  • The bookmarks dialog now also includes procedure and function names if available
  • The code completion now also caches synonym translation to improve performance
  • When running in batch mode and not supplying the -password parameter, a prompt for the password is now displayed
  • The last directory for opening files can now optionally be stored in the current workspace
  • It's now possible to open multiple files through "File -> Open file". If multiple files are selected, each one is opended in a seperate editor tab
  • For Postgres 9.4 the new WITH CHECK OPTION is now shown in the view's source
  • An new command WbCreateProfile is available to to create a connection profile (intended for commandline mode)
  • An new command WbDefineDriver is available to to create a driver definition (intended for commandline mode)
  • For Oracle the list of indexes in the DbExplorer now also shows the index status
  • BUG FIXES:
  • When using WbExport with -useSchema=false and -createTable=true the create table statement still contained the schema in some cases.
  • The detection of the primary key of a table did not work properly if tables with the same name but different primary keys were present in other schemas
  • The editor and message panel were using the font the was configured for displaying data
  • For Oracle WbListIndexes did not show the expression for function based indexes
  • When the option "allow empty lines as delimiter" was enabled, multiple empty lines at the beginning of the script would break the detection of the SQL statements
  • The code completion did not work correctly when the cursor was located between the FROM keyword and a JOIN keyword with no tables in between
  • When entering PL/SQL blocks in console mode the alternate delimiter was not detected.
  • When using a SQL query as the source in the DataPumper the columns from the result were not correctly mapped to the target columns
  • When using WbImport with ZIP files, the file locks on the ZIP files were not released after the import has finished
  • Fixed some problems in the DbExplorer that would lock up the application
  • When using set autotrace traceonly statistics the result of the statement would still be buffered in memory.
  • Deleting dependent rows from a result did not work if the PK was not a numberic value
  • When using -nullString together with -escapeText the null string was escaped in the output file
  • When editing data in the DbExplorer the primary key of a table was not automatically detected any more.
  • The alternate delimiter was not always detected correctly.
  • When inlcuding Views and Grants for WbSchemaDiff the output file was not written properly for some DBMS.
  • When resizing the input dialog for variables or the columns in the table, the dialog was closed
  • When copying multiple tables with WbCopy and -mode=update,insert the copy would abort if one table did no have a primary key even if -continueOnError=true was used
  • For Postgres and SQL Server it was no longer possible to use empty lines as a delimiter and mix that with the standard delimiter
  • The global alternate delimiter (Tools -> Options -> Editor) could not be edited any more
  • In console mode, the output did not honor the setting for "Decimal Digits"
  • For Oracle 12c the automatically generated sequence for identity columns were not displayed
  • For Oracle the position of a function or procedure inside a package was not always detected correctly when displaying the source in the DbExplorer
  • For Postgres WbProcSource did not display the source code for functions with arguments
  • The source code for views with case-sensitive names was not displayed
  • The pre-defined JDBC driver definitions were no longer loaded (e.g. when starting SQL Workbench for the first time)
  • For SQL Server and Postgres alternate delimiters with more than two characters using some special characters were no longer working
  • The names for primary and foreign keys were not quoted properly in the generated SQL source (if they needed quoting)
  • A WbExport based on a following SELECT would always be treated as successful even if the SELECT had an error
  • For Postgres sequences linked to columns the generated source code used OWNER TO instead of the correct OWNED BY
  • WbExport did not use the default setting for the decimal separator
  • It was not possible to unset/clear the global alternate delimiter
  • Selecting a single changesets with WbRunLB did not work properly.
  • For HSQLDB 2.x triggers were no longer displayed.
  • The formatter did not handle non-standard quoted identifiers for T-SQL properly
  • WbSchemaReport was writing the columns for foreign keys in the wrong order
  • For PostgreSQL the default value of function parameters was not shown in the generated SQL
  • For Oracle, synonyms pointing to no longer existing tables where not shown in the DbExplorer
  • Cancelling a running WbExport did not work during the retrieval of the table list
  • When using the "JOIN completion" the ON (or USING) keyword was added even if it was already present
  • For Oracle the position of an error was not shown for CREATE statements
  • For Oracle "included" (non-PK) columns for index organized tables were not shown in the generated DDL statement
  • Column values for FLOAT columns where not formatted correctly in an Excel export
  • WbCopy would show an error message "Table not found" when the preTableStatement failed
  • "Copy as SQL .." did not honor the setting of "Check for updateable columns"
  • For MySQL the source code for timestamp columns with a default CURRENT_TIMESTAMP was incorrect.
  • Encrypting passwords was no longer working
  • It was no longer possible to use the {$clobfile=...} syntax in an SQL statement with Oracle
  • When using "Execute current" macro names were not recognized
  • The cache for auto-completion was not working for DBMS' that return catalog and schema information for a table
  • If a profile name contained a forward slash (/) the profile was not selected as the last used profile in the connection dialog
  • WbXslt was no longer working
  • Look and Feel definitions with more than one library were not loaded any more
  • "Copy as SQL INSERT" would not include auto-generated ("identity") columns
  • For DB2 comments and grants on views where not displayed in the generated source code
  • For Oracle 9.x the source code for packages was not displayed