Scroll to navigation

DBICDUMP(1p) User Contributed Perl Documentation DBICDUMP(1p)
 

NAME

dbicdump - Dump a schema using DBIx::Class::Schema::Loader

SYNOPSIS

  dbicdump <configuration_file>
  dbicdump [-I <lib-path>] [-o <loader_option>=<value> ] \
                <schema_class> <connect_info>
Examples:
  $ dbicdump schema.conf
  $ dbicdump -o dump_directory=./lib \
    -o components='["InflateColumn::DateTime"]' \
    MyApp::Schema dbi:SQLite:./foo.db
  $ dbicdump -o dump_directory=./lib \
    -o components='["InflateColumn::DateTime"]' \
    MyApp::Schema dbi:SQLite:./foo.db '{ quote_char => "\"" }'
  $ dbicdump -Ilib -o dump_directory=./lib \
    -o components='["InflateColumn::DateTime"]' \
    -o preserve_case=1 \
    MyApp::Schema dbi:mysql:database=foo user pass '{ quote_char => "`" }'
  $ dbicdump -o dump_directory=./lib \
    -o components='["InflateColumn::DateTime"]' \
    MyApp::Schema 'dbi:mysql:database=foo;host=domain.tld;port=3306' user pass
On Windows that would be:
  $ dbicdump -o dump_directory=.\lib ^
    -o components="[q{InflateColumn::DateTime}]" ^
    -o preserve_case=1 ^
    MyApp::Schema dbi:mysql:database=foo user pass "{ quote_char => q{`} }"
Configuration files must have schema_class and connect_info sections, an example of a general config file is as follows:
    schema_class MyApp::Schema
    lib /extra/perl/libs
    
    # connection string
    <connect_info>
        dsn     dbi:mysql:example
        user    root
        pass    secret
    </connect_info>
    
    # dbic loader options
    <loader_options>
        dump_directory ./lib
        components     InflateColumn::DateTime
        components     TimeStamp
    </loader_options>
Using a config file requires Config::Any installed.
The optional "lib" key is equivalent to the "-I" option.

DESCRIPTION

Dbicdump generates a DBIx::Class schema using "make_schema_at" in DBIx::Class::Schema::Loader and dumps it to disk.
You can pass any DBIx::Class::Schema::Loader::Base constructor option using "-o <option>=<value>". For convenience, option names will have "-" replaced with "_" and values that look like references or quote-like operators will be "eval"-ed before being passed to the constructor.
The "dump_directory" option defaults to the current directory if not specified.

SEE ALSO

DBIx::Class::Schema::Loader, DBIx::Class.

AUTHOR

Dagfinn Ilmari Mannsaaker "<ilmari@ilmari.org>"

CONTRIBUTORS

Caelum: Rafael Kitover <rkitover@cpan.org>
alnewkirk: Al Newkirk <awncorp@cpan.org>
moritz: Moritz Lenz <moritz@faui2k3.org>

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2014-05-05 perl v5.20.1