SQL::Translator::Parser::DBIx::Class - Create a SQL::Translator schema


NAME

SQL::Translator::Parser::DBIx::Class - Create a SQL::Translator schema from a DBIx::Class::Schema instance


SYNOPSIS

 ## Via DBIx::Class
 use MyApp::Schema;
 my $schema = MyApp::Schema->connect("dbi:SQLite:something.db");
 $schema->create_ddl_dir();
 ## or
 $schema->deploy();
 ## Standalone
 use MyApp::Schema;
 use SQL::Translator;
 
 my $schema = MyApp::Schema->connect;
 my $trans  = SQL::Translator->new (
      parser      => 'SQL::Translator::Parser::DBIx::Class',
      parser_args => { package => $schema },
      producer    => 'SQLite',
     ) or die SQL::Translator->error;
 my $out = $trans->translate() or die $trans->error;


DESCRIPTION

This class requires the SQL::Translator manpage installed to work.

SQL::Translator::Parser::DBIx::Class reads a DBIx::Class schema, interrogates the columns, and stuffs it all in an $sqlt_schema object.

It's primary use is in deploying database layouts described as a set of the DBIx::Class manpage classes, to a database. To do this, see deploy in the DBIx::Class::Schema manpage.

This can also be achieved by having DBIx::Class export the schema as a set of SQL files ready for import into your database, or passed to other machines that need to have your application installed but don't have SQL::Translator installed. To do this see create_ddl_dir in the DBIx::Class::Schema manpage.


SEE ALSO

the SQL::Translator manpage, the DBIx::Class::Schema manpage


AUTHORS

Jess Robinson

Matt S Trout

Ash Berlin

 SQL::Translator::Parser::DBIx::Class - Create a SQL::Translator schema