Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reneeb/mysql-workbench-parser
Parse .mwb files created with MySQL workbench tool.
https://github.com/reneeb/mysql-workbench-parser
hacktoberfest mysql parser workbench
Last synced: 22 days ago
JSON representation
Parse .mwb files created with MySQL workbench tool.
- Host: GitHub
- URL: https://github.com/reneeb/mysql-workbench-parser
- Owner: reneeb
- Created: 2013-09-25T20:54:19.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2021-12-06T09:49:21.000Z (almost 3 years ago)
- Last Synced: 2024-06-18T20:09:34.731Z (5 months ago)
- Topics: hacktoberfest, mysql, parser, workbench
- Language: Perl
- Homepage:
- Size: 201 KB
- Stars: 4
- Watchers: 2
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.mkdn
- Changelog: Changes
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/reneeb/MySQL-Workbench-Parser.svg?branch=master)](https://travis-ci.org/reneeb/MySQL-Workbench-Parser)
[![Kwalitee status](https://cpants.cpanauthors.org/dist/MySQL-Workbench-Parser.png)](https://cpants.cpanauthors.org/dist/MySQL-Workbench-Parser)
[![GitHub issues](https://img.shields.io/github/issues/reneeb/MySQL-Workbench-Parser.svg)](https://github.com/reneeb/MySQL-Workbench-Parser/issues)# 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](https://metacpan.org/pod/MySQL%3A%3AWorkbench%3A%3AParser%3A%3ATable) objects
my @tables = $parser->tables;
- views
An array of [MySQL::Workbench::Parser::View](https://metacpan.org/pod/MySQL%3A%3AWorkbench%3A%3AParser%3A%3AView) objects
my @views = $parser->views;
- file
- datatypes
- domThe [DOM](https://metacpan.org/pod/XML::LibXML) created by [XML::LibXML](https://metacpan.org/pod/XML%3A%3ALibXML).
- 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# Development
The distribution is contained in a Git repository, so simply clone the
repository```
$ git clone git://github.com/reneeb/MySQL-Workbench-Parser.git
```and change into the newly-created directory.
```
$ cd MySQL-Workbench-Parser
```The project uses [`Dist::Zilla`](https://metacpan.org/pod/Dist::Zilla) to
build the distribution, hence this will need to be installed before
continuing:```
$ cpanm Dist::Zilla
```To install the required prequisite packages, run the following set of
commands:```
$ dzil authordeps --missing | cpanm
$ dzil listdeps --author --missing | cpanm
```The distribution can be tested like so:
```
$ dzil test
```To run the full set of tests (including author and release-process tests),
add the `--author` and `--release` options:```
$ dzil test --author --release
```# AUTHOR
Renee Baecker
# 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)