| DBIx-DataSource documentation | Contained in the DBIx-DataSource distribution. |
DBIx::DataSource::mysql - MySQL driver for DBIx::DataSource
use DBIx::DataSource;
use DBIx::DataSource qw( create_database drop_database );
create_database( "dbi:mysql:$database", $username, $password )
or warn $DBIx::DataSource::errstr;
create_database( "dbi:mysql:database=$database;host=$hostname;port=$port",
$username, $password )
or warn $DBIx::DataSource::errstr;
drop_database( "dbi:mysql:$database", $username, $password )
or warn $DBIx::DataSource::errstr;
drop_database( "dbi:mysql:database=$database;host=$hostname;port=$port",
$username, $password )
or warn $DBIx::DataSource::errstr;
This is the MySQL driver for DBIx::DataSource.
Ivan Kohler <ivan-dbix-datasource@420.am>
Copyright (c) 2000 Ivan Kohler Copyright (c) 2000 Mail Abuse Prevention System LLC All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| DBIx-DataSource documentation | Contained in the DBIx-DataSource distribution. |
package DBIx::DataSource::mysql; use strict; use vars qw($VERSION @ISA); use DBIx::DataSource::Driver; @ISA = qw( DBIx::DataSource::Driver ); $VERSION = '0.01';
sub parse_dsn { my( $class, $action, $dsn ) = @_; $dsn =~ s/^(dbi:(\w*?)(?:\((.*?)\))?:)//i #nicked from DBI->connect or '' =~ /()/; # ensure $1 etc are empty if match fails my $prefix = $1 or die "can't parse data source: $dsn"; my $database; if ( $dsn =~ s/(^|[;:])(db|dbname|database)=([^=:;]+)([;:]|$)/$1$2=$4/ ) { $database = $3; } else { $database = $dsn; $dsn = ''; } ( "$prefix$dsn", "\U$action\E DATABASE $database" ); }
1;