NAME

dbicadmin - utility for administrating DBIx::Class schemata

SYNOPSIS

dbicadmin: [-I] [long options...]

  deploy a schema to a database
  dbicadmin --schema=MyApp::Schema \
    --connect='["dbi:SQLite:my.db", "", ""]' \
    --deploy

  update an existing record
  dbicadmin --schema=MyApp::Schema --class=Employee \
    --connect='["dbi:SQLite:my.db", "", ""]' \
    --op=update --set='{ "name": "New_Employee" }'

OPTIONS

Actions

--create

Create version diffs needs preversion

--upgrade

Upgrade the database to the current schema

--install

Install the schema version tables to an existing database

--deploy

Deploy the schema to the database

--select

Select data from the schema

--insert

Insert data into the schema

--update

Update data in the schema

--delete

Delete data from the schema

--op

compatibility option all of the above can be supplied as --op=<action>

--help

display this help

Arguments

--config-file or --config

Supply the config file for parsing by Config::Any

--connect-info

Supply the connect info as trailing options e.g. --connect-info dsn=<dsn> user=<user> password=<pass>

--connect

Supply the connect info as a JSON-encoded structure, e.g. an --connect=["dsn","user","pass"]

--schema-class

The class of the schema to load

--config-stanza

Where in the config to find the connection_info, supply in form MyApp::Model::DB

--resultset or --resultset-class or --class

The resultset to operate on for data manipulation

--sql-dir

The directory where sql diffs will be created

--sql-type

The RDBMs flavour you wish to use

--version

Supply a version install

--preversion

The previous version to diff against

--set

JSON data used to perform data operations

--attrs

JSON string to be used for the second argument for search

--where

JSON string to be used for the where clause of search

--force

Be forceful with some operations

--trace

Turn on DBIx::Class trace output

--quiet

Be less verbose

-I

Same as perl's -I, prepended to current @INC

AUTHORS

See "CONTRIBUTORS" in DBIx::Class

LICENSE

You may distribute this code under the same terms as Perl itself