CPAN-MetaPackager
view release on metacpan or search on metacpan
lib/CPAN/MetaPackager/Database.pm view on Meta::CPAN
sub init_db
{
my($self) = @_;
my($config) = $self -> config;
my(%attributes) =
(
AutoCommit => $$config{AutoCommit},
mysql_enable_utf8 => $$config{mysql_enable_utf8}, #Ignored if not using MySQL.
RaiseError => $$config{RaiseError},
sqlite_unicode => $$config{sqlite_unicode}, #Ignored if not using SQLite.
);
my(@dsn) = split('=', $$config{dsn});
$dsn[1] = File::Spec -> catfile($self -> home_path, $dsn[1]);
$dsn[0] = "$dsn[0]=$dsn[1]";
$self -> dbh(DBI -> connect($dsn[0], $$config{username}, $$config{password}, \%attributes) );
$self -> dbh -> do('PRAGMA foreign_keys = ON') if ($$config{dsn} =~ /SQLite/i);
$self -> db(DBIx::Simple -> new($self -> dbh) );
$self -> creator(DBIx::Admin::CreateTable -> new(dbh => $self -> dbh, verbose => 0) );
( run in 0.652 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )