X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=README;h=7076ba57e15f63de4babd1cfabe2443964559e67;hb=f03a04b97adba23722d0e56067debdd49dc0fddb;hp=dda9c79605e07686719f75d083b3305ea259ce8d;hpb=67bb95f14f1f97c620b4c2bdb72097ef384bba01;p=dbsrgits%2FSQL-Translator.git diff --git a/README b/README index dda9c79..7076ba5 100644 --- a/README +++ b/README @@ -1,30 +1,42 @@ 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). - -As of version 0.03, parsers exist for the following: +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. We also +have 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.06, parsers exist for the following: Databases: MySQL Oracle PostgreSQL + SQLite Sybase + DBI-MySQL + DBI-PostgreSQL + DBI-SQLite + DBI-Sybase + Other: - xSV : arbitrarily delimited text files - Excel : Microsoft Excel spreadsheets - XML-SQLFairy: 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,29 +46,34 @@ 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: - XML-SQLFairy: 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 -* sqlt-graph -* sqlt-dumper -* sqlt -* sqlt.cgi +* sqlt-diagram: interface to Diagram producer +* sqlt-diff : diff two schemas to generate schema mutation file +* sqlt-graph : interface to GraphViz producer +* sqlt-dumper : create a data dumper script from a schema +* sqlt : command-line interface for text-to-text translations +* sqlt.cgi : CGI interface for all SQLFairy functions 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 @@ -78,13 +95,17 @@ manipulate the SQL::Translator::Schema objects. INSTALLATION -The regular method: + $ perl Build.PL + $ ./Build + $ ./Build test + $ su + # ./Build install - $ perl Makefile.PL - $ make - $ make test - $ su - - # make install +MANUAL + +To read the manual: + + $ perldoc SQL::Translator::Manual COPYRIGHT @@ -116,3 +137,7 @@ Check out the SQLFairy homepage at Sourceforge for more information, mailing lists, etc.: http://sqlfairy.sourceforge.net/ + +AUTHORS + +See the included AUTHORS file.