dbmstools

An open source set of Python based utilities for software developers who work with databases
Download

dbmstools Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • John Dickson
  • Publisher web site:
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 2.2 MB

dbmstools Tags


dbmstools Description

An open source set of Python based utilities for software developers who work with databases dbmstools understands database schemas (tables, views, sequences, etc.) and DBMSs (Database Management Systems, e.g. PostgreSQL, Oracle). dbmstools generates create, drop and upgrade scripts, as well as importing and exporting data.dbmstools is mainly aimed at developers who work with databases, and particularly those who need to support schemas on more than one DBMS. The base tools are intended to allow all the database information (schema and base data) to be kept in one single place, and to have DBMS-specific scripts (to create and populate the database schema, and upgrade from one version to the next) generated from that data. As well as the tools for manipulating schemas, there's a second group of tools to help with common database-related tasks, in particular those that are needed during system testing (clearing or dropping tables, inserting or exporting test data).All tools can be run from the command line on most operating systems. There are also wrappers for several of the tools, so that they can be run from within Apache Ant (a Java build system).The DBMS's supported (and the completeness/maturity of that support) are:· Postgres (7 and 8) - good· Oracle - good· Microsoft SQLServer - good· MySQL - good· Hypersonic - limited· Sqlite - limited. Here are some key features of "dbmstools": · Generate the same (or similar) schema for many different DBMSs, all from a single XML representation · Migrate a schema from one DBMS to another, via an XML representation · Given 2 versions of the schema in XML, generate schema upgrade scripts for one or more DBMS · Generate HTML documentation (including diagrams) from an XML schema representation · Export a schema from a DBMS to XML · Export data from a schema, in many different formats · Clear all data from a schema (or some tables) · Drop all objects (tables, views, sequences) from a schema (or some objects) · Customise data import scripts for different DBMSs. Requirements: · Python 2.2 or later · Java (for the db2xml, db2sql, dbclear and dbdrop tools) · JDBC driver for your DBMS (for the db2xml, db2sql, dbclear and dbdrop tools) What's New in This Release: General: · Added proper support for encodings other than ASCII, particularly UTF-8 and ISO-8859-1 (also known as Latin-1 and Western European), in schema description fields and CHAR/VARCHAR/TEXT columns. Thanks to Cesar Chiarinelli for the bug report. See notes for each tool, and FAQ. · All SQL files are now encoded in ISO-8859-1 (Latin 1) by default, with command line option to use UTF-8 on xml2ddl, db2* tools and filterdml, as well as ant wrappers for xml2ddl and filterdml · HTML encoding is now set to UTF-8 · db2xml now outputs XML as UTF-8 · Dbmstools now requires Python >= 2.2 · Started adding support for Sqlite. Not all column types are supported, and there will likely be no support for sqlite with deltaddl, but simple schemas can now be generated. filterdml: · BUG: Script now executes using 'python', not 'python2.4' xml2doc: · Wiki character styles now work at the start of a description, and after tabs, linefeeds and explicit breaks (``]``) · BUG: Non-ascii characters (e.g. UTF-8 or Latin 1) in XML file are now supported · BUG: If 'dot' is not in the PATH, and running under Jython, no longer throws an exception and stops, but rather just skips diagram generation dbmsjy: · BUG: Exception when running with verbose flag on Python < 2.4 Ant task: · The Jython ant task has been changed to the package ``net.sourceforge.dbmstools``. · Combined the Ant task into the ``dbmstools-jython-xxx.jar`` file, so now only one jar is required for the task. This jar also includes all the dbmstools, so there is no longer any need to have dbmstools available on the file system · The above Jython jar now includes all Python libraries, · The included Jython jar has been updated to version 2.2.1, and now has all the Python libraries included within the jar (so no need for a Lib directory). The ``pythonBaseDir`` attribute is therefore no longer required on the ``jython`` task element.


dbmstools Related Software