dbicdump
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.
AUTHORS
See "AUTHORS" in DBIx::Class::Schema::Loader.
LICENSE
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
perl v5.26.1 2018-04-19 DBICDUMP(1p)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024
Hurricane Electric.
All Rights Reserved.