3 SQL::Translator is a group of Perl modules that converts
4 vendor-specific SQL table definitions into other formats, such as
5 other vendor-specific SQL, ER diagrams, documentation (POD and HTML),
6 XML, and Class::DBI classes. The main focus of SQL::Translator is
7 SQL, but parsers exist for other structured data formats, including
8 Excel spreadsheets and arbitrarily delimited text files. Through the
9 separation of the code into parsers and producers with an object model
10 in between, it's possible to combine any parser with any producer, to
11 plug in custom parsers or producers, or to manipulate the parsed data
12 via the built-in object model. Presently only the definition parts of
13 SQL are handled (CREATE, ALTER), not the manipulation of data (INSERT,
16 As of version 0.02, parsers exist for the following:
23 xSV (arbitrarily delimited text files)
25 And the following producers exist:
27 ClassDBI: Class::DBI classes
28 Diagram: quasi-ER diagrams using libgd
29 GraphViz: ER diagrams using GraphViz
30 HTML: HTML documentation of schema
31 MySQL: MySQL-specific schema
32 Oracle: Oracle-specific schema
33 POD: Plain Old Documenation of schema
34 PostgreSQL: PostgreSQL-specific schema
35 SQLite: SQLite-specific schema
36 Sybase: Sybase-specific schema
37 XML: structure of the schema described in XML
39 Included in this distribution are a few scripts designed to be user
40 interfaces for the actual SQL::Translator modules. In the "bin"
41 directory, you will find:
48 All scripts ending in ".pl" are meant to be run from the command line
49 with various switches to control the input and output of the scripts,
50 while the ".cgi" script is a web-form frontend. The script you'll
51 probably find most useful is the "sql_translator.pl" script which is
52 meant to be the main interface for translating from text-to-text. The
53 graphic producers, however, have many extra switches, so there are
54 scripts specific for each of the the GraphViz and ER-diagram producers.
55 All scripts start with "sql" so it will be easier to identify them on
56 your system. All the "*.pl" scripts will be installed in the normal
57 installation process, but you'll have to put the CGI script into your
58 web CGI directory to use it.
60 If you're more interested in using the SQL::Translator modules
61 directly, then you might be more interested to examine some of the
62 test scripts in the "t" directory. While the test suite isn't
63 currently as thorough as it should be, you will definitely get the
64 idea of how to parse a file and manipulate the SQL::Translator::Schema
79 Ken Y. Clark, <kclark@cpan.org>,
80 darren chamberlain <darren@cpan.org>,
81 Chris Mungall <cjm@fruitfly.org>,
82 Allen Day <allenday@users.sourceforge.net>,
83 Sam Angiuoli <angiuoli@users.sourceforge.net>,
84 Ying Zhang <zyolive@yahoo.com>,
85 Mike Mellilo <mmelillo@users.sourceforge.net>.
89 This program is free software; you can redistribute it and/or modify it
90 under the terms of the GNU General Public License as published by the
91 Free Software Foundation; version 2.
93 This program is distributed in the hope that it will be useful, but
94 WITHOUT ANY WARRANTY; without even the implied warranty of
95 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
96 Public License for more details.
98 You should have received a copy of the GNU General Public License along
99 with this program; if not, write to the Free Software Foundation, Inc.,
100 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
104 Please use http://rt.cpan.org/ for reporting bugs.
108 Check out the SQLFairy homepage at Sourceforge for more information,
111 http://sqlfairy.sourceforge.net/