Provided by: libparse-dia-sql-perl_0.31-1_all bug

NAME

       Parse::Dia::SQL - Convert Dia class diagrams into SQL.

SYNOPSIS

           use Parse::Dia::SQL;
           my $dia = Parse::Dia::SQL->new(
             file => 't/data/TestERD.dia',
             db   => 'db2'
           );
           print $dia->get_sql();

           # or command-line version
           perl parsediasql --file t/data/TestERD.dia --db db2

DESCRIPTION

       Dia is a diagram creation program for Linux, Unix and Windows released under the GNU
       General Public License.

       Parse::Dia::SQL converts Dia class diagrams into SQL.

       Parse::Dia::SQL is the parser that interprets the .dia file(s) into an internal
       datastructure.

       Parse::Dia::SQL::Output (or one of its sub classes) can take the datastructure and
       generate the SQL statements it represents.

MODELLING HOWTO

       See <http://tedia2sql.tigris.org/usingtedia2sql.html>

   Modelling differences from tedia2sql
       •   Index options are supported.  Text is taken from the comments field of the operation,
           i.e. the index.  A database specific default value is used if the comments field is
           left blank.  Consult the Output sub class' constructor.

       •   Type mapping is supported. A type mapping is a user-defined column name replacement.
           Unlike tedia2sql the type mapping is non-recursive.  Consult "t/data/typemap.dia" for
           an example.

       •   Preliminary support for Dia's database shapes is added.

       •   Table comments are used as table postfix options.  This means per-table options (e.g.
           partitioning options) are supported on a per-database level.

       •   backticks notation is supported for MySQL-InnoDB.

DIA VERSIONS

       Parse::Dia::SQL has been tested with Dia versions 0.93 - 0.97.

       Parse::Dia::SQL uses the XML "version" tag information in the .dia input file to determine
       how each XML construct is formatted.  Future versions of Dia may change the internal
       format, and XML "version" tag is used to detect such changes.

DATABASE SUPPORT

       The following databases are supported:

       DB2
       Informix
       Ingres
       Oracle
       Postgres
       Sas
       SQLite3
       SQLite3fk (with foreign key support)
       Sybase
       MySQL InnoDB
       MySQL MyISAM

       Adding support for additional databases means to create a subclass of
       Parse::Dia::SQL::Output.

       Patches are welcome.

AUTHOR

       Parse::Dia::SQL is based on tedia2sql by Tim Ellis and others.  See the AUTHORS file for
       details.

       Modified by Andreas Faafeng, "<aff at cpan.org>" for release on CPAN.

BUGS

       Please report any bugs or feature requests to "bug-parse-dia-sql at rt.cpan.org", or
       through the web interface at
       <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Parse-Dia-SQL>.  I will be notified, and
       then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

       You can find documentation for this module with the perldoc command.

           perldoc Parse::Dia::SQL

       You can also look for information at:

       •   Project home

           Documentation and public source code repository:

           <http://tedia2sql.tigris.org/>

       •   RT: CPAN's request tracker

           <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Parse-Dia-SQL>

       •   AnnoCPAN: Annotated CPAN documentation

           <http://annocpan.org/dist/Parse-Dia-SQL>

       •   CPAN Ratings

           <http://cpanratings.perl.org/d/Parse-Dia-SQL>

       •   Search CPAN

           <http://search.cpan.org/dist/Parse-Dia-SQL>

SEE ALSO

       •   <http://tedia2sql.tigris.org/>

       •   <http://live.gnome.org/Dia>

ACKNOWLEDGEMENTS

       See the AUTHORS file.

LICENSE

       This program is released under the GNU General Public License.

TERMINOLOGY

       By database we mean relational database management system (RDBMS).

METHODS

       new()
           The constructor.  Mandatory arguments:

             file  - The .dia file to parse
             db    - The target database type

           Dies if target database is unknown or unsupported.

       get_sql()
           Return sql for given db.  Calls underlying methods that performs parsing and sql
           generation.