DBCopy Change Log

=================

0.19 (11/04/2005)

====

- Performance increase due to a reduction in the number of data-type queries on the source

and destination databases (Thanks to Dan Dragut)

- Fixed table analysis progress monitor dialog so that it goes away when the copy operation

is complete.

- Examined data types for the other dialects (Firebird, HyperSonic, Pointbase, etc.)

currently supported and explicitly set them for the appropriate java type. Tested each type

against the corresponding database for usage and compatibility.

- Added custom type mappings for McKoi, Derby and Sybase

- Fixed bug which caused multiple dialogs to appear when cancelling a copy operation.

- Fixed bug that would create a temporary file to store the blob in if the blob column

value is null.

- Fixed bug 1344224 (When auto-commit is disabled, committing the source session)

0.18 (10/22/2005)

====

- Added table analysis of source tables prior to attempting to create the tables in the

destination database. Analysis consists of creating a test table with one column

in it for each column of the table. This can be turned off, but it gives a better description

of what happened in the event that a column name isn't allowed in the destination database.

Additionally, this will be done for all tables in the copy set before making any changes in the

destination database. If the source and destination databases are the same, this analysis is

skipped.

- Updated for SQuirreL plugin interface changes to be compatible with latest SQuirreL (> 2.0 final)

This version of the plugin is still compatible with previous versions of SQuirreL (2.0RC1, 2.0Final)

as the interface change added new members and did not change any existing members.

- Examined data types for the major dialects currently supported and explicitly set them for the

appropriate java type. Tested each type against the corresponding database for usage and

compatibility. This should hopefully make the default data type mappings used sufficiently

robust for compatibility between databases.(See

http://dbcopyplugin.sourceforge.net/dbcopydatatypemapping.html for more detail regarding how

the plugin maps data types between different databases)

- Fixed a bug that resulted in the following error message - "Copy failed: 0". Behind the scenes

an ArrayIndexOutOfBoundsException was encountered when getting information about the newly created

table in the destination schema, if the case of the table name didn't match.

0.17 (8/26/2005)

====

- Added configuration item for column name keyword checking in destination database.

This feature uses the "keywords" reported by the JDBC driver to find column names

in the source table copy set that cannot be used as column names in the destination

database. However, this is too aggressive in some cases as some databases (like DB2)

report keywords that can also be used as column names. So, now this checking can be

disabled. The configuration is available in

"File" -> "Global Preferences" -> "DBCopy" -> "Column Type Mapping"

0.16 (8/21/2005)

====

- Added custom column type mappings for IBM DB2. (Tested against DB2 PE for Windows)

- Added new configuration option to disable auto-detection of destination

database.(This causes the Hibernate dialect chooser to always appear when

copying to a new database session. Dialect choices are cached for existing

sessions). The configuration is available in

"File" -> "Global Preferences" -> "DBCopy" -> "Column Type Mapping"

- Fixed bug which would cause destination copy sessions to linger in memory even

after being closed.

- Changed Oracle type mapping for LONGVARCHAR to use CLOB instead of LONG since

LONG is deprecated and multiple LONG columns for a single table aren't supported

whereas multiple CLOB columns for a single table are.

- Massive refactoring to provide a framework for external application integration.

(For the most part, this facilitates writing a driver that automates regression

testing, but might be useful for other 3rd-party integrations)

0.15 (8/13/2005)

====

- Added support for turning off auto-commit and committing

after a configurable number of records.

- Added support for turning on/off the copy of foreign keys,

table records and index defintions.

- Added ability to detect and ignore duplicate index defintions.

- Fixed bug which resulted from using the wrong string function to query

max length for a column - this is database-dependent and the code was

assuming that all databases have a "length" function.

0.14 (8/5/2005)

====

- Added support for caching BLOBs to disk during transfer to prevent

the client from running out of memory on large BLOBs. Transfer buffer

size is configurable.

- Added DB Copy tab to Global Preferences section of SQuirreL to configure

preferences for the DB Copy Plugin.

- Truncate can now be used for databases that support it, instead of "delete".

This can be turned on/off for all databases in the preferences. If enabled

it will be attempted, and if not supported, delete will be used instead.

- When truncating/deleting records for tables that exist in the destination

database, the dialog that prompts for record deletion now has a "Yes to all"

button to apply record deletion to all destination tables.

- Added support for choosing additional Hibernate dialects if destination

database vendor couldn't be determined. (DB2, Derby, FrontBase, Informix,

Ingres, Interbase, McKoi and TimesTen)

0.13 (7/30/2005)

====

- Added support for copying index definitions along with the tables

that are being copied.

- Altered destination table truncation to use "delete from" instead of

the less standard "truncate table". Will add support for this back

in on some databases in the next release.

- Added check for if column is a keyword when copying data from one

table to another (In the case where the data is copied without creating

the table).

- If an SQLException is encountered during record copy, show it's message

to the user (instead of simply printing the stack trace).

- Fixed source files eol chars.

0.12 (7/13/2005) First Beta Release

====

- Added support for internationalizing the the user dialog messages.

- Bug fixes (moved GUI work onto event dispatch thread)

- Added support for checking if source database column names are in fact

keywords in the destination database.

- When records exist in the destination table, the delete dialog now indicates

the name of the table when asking the user if it should truncate the table.

- Added custom type mappings for MS SQLServer

- Added ability to auto-determine when destination database is MS SQLServer.

- Tested this version's MS SQLServer dialect against MS SQLServer 2005(CTP)

0.11 (6/30/2005)

====

- Added copying table constraints (Primary Key and Foreign Key).

- Added dialog to allow user to select a hibernate dialect for the destination

database, if one couldn't be determined automatically.

- Asks user to truncate records in destination table, if records already exist.

- Fixed packaging to place hibernate and commons-logging jars in subdirectory

space of dbcopy plugin.

- Supported Hibernate dialects are now:

Firebird, Oracle, Sybase, MS SQLServer,

MySQL, HyperSonic, Pointbase, PostgreSQL.

- Bug fixes. Actually tested this release a bit.

0.10 (6/24/2005)

====

- Initial release.