NAME

    MySQL::Workbench::Parser - parse .mwb files created with MySQL
    Workbench

VERSION

    version 1.11

SYNOPSIS

        # create the parser
        my $parser = MySQL::Workbench::Parser->new(
            file => '/path/to/file.mwb',
        );
    
        # access tables of the workbench ER model
        my @tables = @{ $parser->tables };
    
        # access views of the workbench ER model
        my @views = @{ $parser->views };

DESCRIPTION

    The MySQL Workbench is a tool to design database entity relationship
    models. This parser parses .mwb files created with that tool and
    extracts all relevant information.

METHODS

 new

    Create a new parser object

        my $parser = MySQL::Workbench::Parser->new(
            file => '/path/to/file.mwb',
        );

 dump

    dump the database structure as YAML

        my $yaml = $parser->dump;

 get_datatype

    get datatype for a workbench column datatype

        my $datatype = $table->get_datatype( 'com.mysql.rdbms.mysql.datatype.mediumtext' );

    returns the MySQL name of the datatype

        MEDIUMTEXT

ATTRIBUTES

      * tables

      An array of MySQL::Workbench::Parser::Table objects

          my @tables = $parser->tables;

      * views

      An array of MySQL::Workbench::Parser::View objects

          my @views = $parser->views;

      * file

      * datatypes

      * dom

      The DOM <https://metacpan.org/pod/XML::LibXML> created by
      XML::LibXML.

      * lint

      If set to false, the linting isn't done (default: true)

WARNINGS

    The ER model designed with Workbench is checked for:

      * duplicate indices

      * duplicate table names

      * duplicate column names in a table

AUTHOR

    Renee Baecker <reneeb@cpan.org>

COPYRIGHT AND LICENSE

    This software is Copyright (c) 2018 by Renee Baecker.

    This is free software, licensed under:

      The Artistic License 2.0 (GPL Compatible)