124 |
my $database = shift || return; |
my $database = shift || return; |
125 |
print STDERR "## connect to $database\n" if $debug; |
print STDERR "## connect to $database\n" if $debug; |
126 |
$dbh = DBI->connect($dsn . $database,$user,$passwd, { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr; |
$dbh = DBI->connect($dsn . $database,$user,$passwd, { RaiseError => 1, AutoCommit => 0 }) || die $DBI::errstr; |
127 |
$dbh->do( qq{ set names '$db_encoding'; } ) if $db_encoding && $dsn =~ m{mysql}; |
if ( $db_encoding ) { |
128 |
|
if ( $dsn =~ m{Pg} ) { |
129 |
|
$dbh->do( qq{ set client_encoding = '$db_encoding'; } ); |
130 |
|
} elsif ( $dsn =~ m{mysql} ) { |
131 |
|
$dbh->do( qq{ set names '$db_encoding'; } ); |
132 |
|
} else { |
133 |
|
warn "Don't know how to set encoding to $db_encoding for $dsn"; |
134 |
|
} |
135 |
|
} |
136 |
} |
} |
137 |
|
|
138 |
use_database( $database ); |
use_database( $database ); |