DBIx::DataSource::Driver3pm
Driver writer's guide and base class
Usage
perldoc DBIx::DataSource::Driver;orpackage DBIx::DataSource::FooBase;use DBIx::DataSource::Driver;@ISA = qw( DBIx::DataSource::Driver );
Overview
To implement a driver for your database:
1) If you can create a database with an SQL command through DBI/DBD, simply
provide a parse_dsn class method which returns a list consisting of the
*actual* data source to use in DBI->connect and the SQL.
package DBIx::DataSource::NewDatabase;use DBIx::DataSource::Driver;@ISA = qw( DBIx::DataSource::Driver );sub parse_dsn {my( $class, $action, $dsn ) = @_;# $action is `create' or `drop'# for example, if you parse parse $dsn for $database,# $sql = "$action $database";# you can die on errors - it'll be caught( $new_dsn, $sql );}
2) Otherwise, you'll need to write create_database and drop_database
class methods.
package DBIx::DataSource::NewDatabase;sub create_database {my( $class, $dsn, $user, $pass ) = @_;# for success, return true# for failure, die (it'll be caught)}sub drop_database {my( $class, $dsn, $user, $pass ) = @_;# for success, return true# for failure, die (it'll be caught)}
Releases
12 releases since Debian 3.0 (Woody); the text changed 4 times.