DBD::mysql vs DBI->data_sources('mysql')
i'm not the first to notice this (as i peruse
older posts on geocrawler.com) but i've not seen
any definitive answers--
until i recently did 'apt-get upgrade', this
worked:
#!/usr/bin/perl
use DBI;
my @src = DBI->data_sources( 'mysql' );
now, it returns nothing. blank list. empty array.
- mysqld = 3.22.32-log
- perl = 5.005_03 (i386)
- DBD::mysql = 2.0402
- DBI = 1.13
the code below still (correctly) returns 'mysql'
as one of the drivers, which indicates that there's
no change to the name of the driver itself:
my @dbms = DBI->available_drivers(1);
if i happen to know the name of a particular
data source (database) i can hard-code it
as always:
my $dbh = DBI->connect(dbi:mysql:whatever, $who, $auth);
and from there everything is fine. (i.e. $dbh->do(),
$dbh->prepare(), $dbh->execute() all behave as they're
supposed to.)
and of course, i can still get into mysql via the
command-line client-side interface, no problem.
the only think that broke was DBI->data_sources().
how'd i break my DBI->data_sources('mysql') ?
"it's dead jim..."
Reply to: