cx_OracleTools Changelog

What's new in cx_OracleTools 8.0

Oct 10, 2011
  • In DescribeObject, added option --show-synonyms which enables display of
  • synonyms that reference the object. The default value for this option is
  • false.
  • In DescribeObject, DescribeSchema, ExportObjects and RebuildTable, added
  • support for Oracle context objects.
  • In DescribeSchema, ExportObjects and RecompileSource, added option
  • name-file which acts in the same fashion as the --name option except that
  • the value of the option refers to a file containing a list of names, one
  • name per line.
  • In DescribeObject, DescribeSchema and ExportObjects, added option
  • include-view-columns which enables specification of the column names
  • when creating a view.
  • In DescribeObject and DescribeSchema added support for eliminating the
  • quotas on tablespaces when generating create user statements.
  • In DescribeObject, DescribeSchema and ExportObjects, added options
  • as-of-timestamp and --as-of-scn which enable flashback queries when
  • performing describes. This can be very useful for recovering those
  • accidentally issued DDL commands!
  • In DumpCSV, make use of the builtin module csv and the standard option
  • schema; in addition, allow the file name to be specified as "-" or not
  • at all in which case the output goes to stdout.
  • In DumpData, added support for dumping CLOB, BLOB and binary data values
  • correctly. A commit statement is also appended to the output now as a
  • convenience.
  • In ExportXML, added option --sort-by which allows the result set to be
  • sorted before exporting. In addition, the source can be a query instead of
  • simply a table name.
  • In GeneratePatch, switch to the new more intelligent parser.
  • In ImportXML, now use cElementTree rather than home-grown XML processing
  • library.
  • In RebuildTable, removed SQL*Plus specific statements since by default
  • connect statements are issued which only works properly with PatchDB.
  • In RecompileSource, added option --connect-as-owner and removed option
  • password. The new option specifies that when invalid objects are
  • recompiled that a connection to the owner of the invalid object is
  • established using the password of the current connection. The default
  • value is false since this is an uncommon situation and is retained at all
  • for support of product development at Computronix.
  • Replaced CompileSource with PatchDB which uses a much more advanced parser
  • and is setup to handle additional commands besides executing SQL scripts.
  • Added setup.py for building with cx_Freeze.
  • Other changes required to keep up with changes in Python, dependent
  • libraries and Oracle (including up to Oracle 11.2).

New in cx_OracleTools 7.4 (Oct 10, 2011)

  • Use cx_Logging to output messages rather than write directly to stderr.
  • Added support for describing comments on tables and columns.
  • Improved output when an exception occurs.
  • cx_Oracle 4.2 is now required.
  • Replace use of executemanyprepared() with executemany() and bind arrays
  • instead of dictionaries which actually improves performance by about 20-25%
  • in some cases.
  • Moved code from module cx_DumpData in project cx_PyOracleLib into DumpData.
  • Provide more meaningful message when source or target directory is missing
  • in GeneratePatch as requested by Micah Friesen.
  • Ignore invalid objects of type "UNDEFINED" when describing objects.
  • Export the roles before the users as the reason the roles are included is
  • because they are administered by the users and the grants will by
  • definition fail.
  • In ExportObjects, create the directory before any exporting actually takes
  • place in order to handle the situation when no objects are exported as
  • requested by Micah Friesen.
  • Eliminated identical grants made by different users when describing
  • objects.
  • Add phrase "(n% of file)" to the reporting message of ImportData when
  • possible as requested by Don Reid.
  • Display something more reasonable when compiling statements that modify
  • constraints.

New in cx_OracleTools 7.3 (Oct 10, 2011)

  • Added ExportXML and ImportXML utilities for importing and exporting data
  • from an Oracle database as XML.
  • Added support in ExportData for limiting the number of rows exported and
  • skipping some rows first.
  • Added support in CopyData for the case where all the columns on the target
  • table form the primary key.
  • Added support for case sensitive tables and column names in CopyData.
  • Added option --report-point to CopyData which defaults to --commit-point.
  • Added options --log-file, --log-level and --log-prefix to all of the tools
  • and removed --timestamp and --prefix on DbDebugger since the new options
  • cover the functionality of the old ones.
  • Added options --suppress-owner-dir, --include-roles, --include-users,
  • no-related and --no-triggers to ExportObjects.
  • Added option --sort-by to DumpData to modify the query executed to include
  • a sort clause.
  • Added option --only-if to DescribeSchema and ExportObjects which allows
  • for filtering the objects described by a where clause against dba_objects.
  • DbDebugger now displays the time to the microsecond if desired.
  • GeneratePatch now makes sure that owner changes are displayed before
  • displaying anything about the objects for that owner that are being
  • patched.
  • GeneratePatch now produces consistent results by performing a sort before
  • displaying any results.
  • Fixed bug in GeneratePatch parsing grants with the "with grant option"
  • specified.
  • Fixed bug in DescribeObject where connect statements were being displayed.

New in cx_OracleTools 7.2 (Oct 10, 2011)

  • Added new tools ExportColumn and ImportColumn for exporting (importing)
  • CLOB and BLOB columns from (into) an Oracle database.
  • Include package used for debugging.
  • When using DescribeObject, check if the object with the given name matches
  • an object in the database, including case. If the object cannot be found,
  • check for an object in the database by converting the argument to
  • uppercase. Finally, if the name is not found and is not qualified with a
  • schema owner, search the public synonyms for one by that name and describe
  • that object instead.
  • Added feedback to DbDebugger indicating on what database the connection
  • has been established and on what pipe name the debugger is listening.
  • Added optional argument to specify a filename into which to put the output
  • created by DescribeObject. This is of particular use on Windows which
  • doesn't handle redirection very well, particularly in GUI programs.