X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=README;h=cf4051be88e013fe368f7807cd18ce6af0039fac;hb=8b183a0277dc303b883ee8c4a7d7f58bcb73ad10;hp=c0c83b2245fb4f02a8df554d98052e1eede2fc22;hpb=68186ea5a2cd1ab63c7379bf71ce0d0a47955d6e;p=dbsrgits%2FSQL-Translator.git diff --git a/README b/README index c0c83b2..cf4051b 100644 --- a/README +++ b/README @@ -1,17 +1,22 @@ SQL::Translator README -SQL::Translator is a group of Perl modules that converts -vendor-specific SQL table definitions into other formats, such as -other vendor-specific SQL, ER diagrams, documentation (POD and HTML), -XML, and Class::DBI classes. The main focus of SQL::Translator is -SQL, but parsers exist for other structured data formats, including -Excel spreadsheets and arbitrarily delimited text files. Through the -separation of the code into parsers and producers with an object model -in between, it's possible to combine any parser with any producer, to -plug in custom parsers or producers, or to manipulate the parsed data -via the built-in object model. Presently only the definition parts of -SQL are handled (CREATE, ALTER), not the manipulation of data (INSERT, -UPDATE, DELETE). +SQL::Translator is a group of Perl modules that manipulate structure +data definitions (mostly database schemas) in interesting ways, such +as converting among different dialects of CREATE syntax (e.g., +MySQL-to-Oracle), visualizations of schemas (pseudo-ER diagrams +GraphViz or GD), automatic code generation (using Class::DBI), +converting non-RDBMS files to SQL schemas (xSV text files, Excel +spreadsheets), serializing parsed schemas (via Storable, YAML and +XML), creating documentation (HTML and POD), and more. New to version +0.03 is the ability to talk directly to a database through DBI to +query for the structures of several databases. + +Through the separation of the code into parsers and producers with an +object model in between, it's possible to combine any parser with any +producer, to plug in custom parsers or producers, or to manipulate the +parsed data via the built-in object model. Presently only the +definition parts of SQL are handled (CREATE, ALTER), not the +manipulation of data (INSERT, UPDATE, DELETE). As of version 0.03, parsers exist for the following: @@ -20,11 +25,18 @@ As of version 0.03, parsers exist for the following: Oracle PostgreSQL Sybase + SQLite + + DBI-MySQL + DBI-PostgreSQL + DBI-SQLite + DBI-Sybase Other: - xSV : arbitrarily delimited text files - Excel : Microsoft Excel spreadsheets - SqlfXML: SQLFairy's XML format + xSV : arbitrarily delimited text files + Excel : Microsoft Excel spreadsheets + XML-SQLFairy : SQLFairy's XML format + YAML/Storable: Serialized schema objects And the following producers exist: @@ -34,41 +46,45 @@ And the following producers exist: PostgreSQL SQLite Sybase - Code Generators: - ClassDBI: Class::DBI classes + ClassDBI : Class::DBI classes Documentation: - Diagram : quasi-ER diagrams using libgd - GraphViz: ER diagrams using GraphViz - HTML : HTML documentation of schema - POD : Plain Old Documenation of schema + Diagram : quasi-ER diagrams using libgd + GraphViz : ER diagrams using GraphViz + HTML : HTML documentation of schema + POD : Plain Old Documenation of schema + + Serialization: + Storable : using Perl's Storable module + YAML : YAML format + XML-SQLFairy : structure of the schema described in SQLFairy's XML Other: - SqlfXML: structure of the schema described in SQLFairy's XML + TTSchema : to any text format via Template Toolkit Included in this distribution are a few scripts designed to be user interfaces for the actual SQL::Translator modules. In the "bin" directory, you will find: -* sqlt-diagram.pl -* sqlt-graph.pl -* sqlt-dumper.pl -* sql_translator.cgi -* sql_translator.pl - -All scripts ending in ".pl" are meant to be run from the command line -with various switches to control the input and output of the scripts, -while the ".cgi" script is a web-form frontend. The script you'll -probably find most useful is the "sql_translator.pl" script which is -meant to be the main interface for translating from text-to-text. The -graphic producers, however, have many extra switches, so there are -scripts specific for each of the the GraphViz and ER-diagram -producers. All scripts start with "sql" so it will be easier to -identify them on your system. All the "*.pl" scripts will be -installed in the normal installation process, but you'll have to put -the CGI script into your web CGI directory to use it. +* sqlt-diagram +* sqlt-graph +* sqlt-dumper +* sqlt +* sqlt.cgi + +All scripts not ending in ".cgi" are meant to be run from the command +line with various switches to control the input and output of the +scripts, while the ".cgi" script is a web-form frontend. The script +you'll probably find most useful is "sqlt" which is meant to be the +main interface for translating from text-to-text. The graphic +producers, however, have many extra switches, so there are scripts +specific for each of the the GraphViz and ER-diagram producers. All +scripts start with "sqlt" so it will be easier to identify them on +your system. All the non-CGI scripts will be installed in a system +path when you "make install," but you'll have to manually place the +CGI script into your web CGI directory to use it. If you're more interested in using the SQL::Translator modules directly, then you might be more interested to examine some of the @@ -105,9 +121,18 @@ BUGS Please use http://rt.cpan.org/ for reporting bugs. +PRAISE + +If you find this module useful, please use +"http://cpanratings.perl.org/rate/?distribution=SQL-Translator" to rate it. + SEE ALSO Check out the SQLFairy homepage at Sourceforge for more information, mailing lists, etc.: http://sqlfairy.sourceforge.net/ + +AUTHORS + +See the include AUTHORS file.