Anansi-Database-MySQL

 view release on metacpan or  search on metacpan

lib/Anansi/Database/MySQL.pm  view on Meta::CPAN


See L<Anansi::DatabaseComponent::validate|Anansi::DatabaseComponent/"validate"> for details.  Overridden by L<Anansi::Database::MySQL::validate|Anansi::Database::MySQL/"validate">.

=cut


=head2 connect

    if(Anansi::Database::MySQL::connect(
        $OBJECT,
        undef,
        DATABASE => 'someDatabase',
        PASSWORD => 'somePassword',
        USERNAME => 'someUser',
    ));

    my $handle = DBI->connect('DBI:mysql:database=someDatabase', 'someUser', 'somePassword');
    if($OBJECT->connect(
        undef,
        HANDLE => $handle,
    ));

=over 4

=item self I<(Blessed Hash, Required)>

An object of this namespace.

=item channel I<(String, Required)>

The abstract identifier of a subroutine.

=item parameters I<(Hash, Optional)>

Named parameters.

=over 4

=item AutoCommit I<(String, Optional)>

Defines whether the MySQL driver automatically saves any changes made to the
B<DATABASE>.  A value of B<1> I<(one)> means changes will be saved, a value of
B<0> I<(zero)> means changes will need to be manually saved.  Changes are not
saved by default.

=item DATABASE I<(String, Optional)>

The name of the MySQL database.  A value of B<mysql> is used by default.

=item HANDLE I<(DBI::db, Optional)>

The database handle of an existing database connection.

=item HOSTNAME I<(String, Optional)>

The IP address of the computer where the MySQL B<DATABASE> is hosted.  A value
of B<127.0.0.1> is used by default.

=item PASSWORD I<(String, Optional)>

The password of the B<USERNAME> that is accessing the MySQL database.  A value
of B<undef> is used by default.

=item PORT I<(String, Optional)>

The IP address port number of the computer where the MySQL B<DATABASE> is
hosted.  A value of B<3306> I<(three three zero six)> is used by default.

=item PrintError I<(String, Optional)>

Defines whether the MySQL driver will use the B<warn> function.  A value of B<1>
I<(one)> means errors will be output using B<warn>, a value of B<0> I<(zero)>
means errors will not be output in this way.  Errors are output by default.

=item RaiseError I<(String, Optional)>

Defines whether the MySQL driver will use the B<die> function.  A value of B<1>
I<(one)> means errors will be output using B<die>, a value of B<0> I<(zero)>
means errors will not be output in this way.  Errors are output by default.

=item USERNAME I<(String, Optional)>

The user that is accessing the MySQL database.  A value of B<undef> is used by
default.

=back

=back

Overrides L<Anansi::DatabaseComponent::connect|Anansi::DatabaseComponent/"connect">.

=cut


sub connect {
    my ($self, $channel, %parameters) = @_;
    return $self->SUPER::connect(
        undef,
        INPUT => [
            {
                INPUT => [
                    'dbi:mysql:database=', {
                        DEFAULT => 'mysql',
                        NAME => 'DATABASE',
                        REF => '',
                    },
                    ';host=', {
                        DEFAULT => '127.0.0.1',
                        NAME => 'HOSTNAME',
                        REF => '',
                    },
                    ';port=', {
                        DEFAULT => '3306',
                        NAME => 'PORT',
                        REF => '',
                    }
                ],
                REF => '',
            }, {
                NAME => 'USERNAME',
                REF => '',



( run in 1.141 second using v1.01-cache-2.11-cpan-ceb78f64989 )