The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

CTK::DBI - Database independent interface for CTKlib

VERSION

Version 2.31

SYNOPSIS

    use CTK::DBI;

    # Enable debugging
    # $CTK::DBI::CTK_DBI_DEBUG = 1;

    # MySQL connect
    my $mso = CTK::DBI->new(
            -dsn        => 'DBI:mysql:database=TEST;host=192.168.1.1',
            -user       => 'login',
            -pass       => 'password',
            -connect_to => 5,
            -request_to => 60
            #-attr      => {},
            #-prepare_attr => {},
            #-debug     => 1,
        );

    my $dbh = $mso->connect or die($mso->error);

    die($mso->error) if $mso->error;

    # Table select (as array)
    my @result = $mso->table($sql, @inargs);

    # Table select (as hash)
    my %result = $mso->tableh($key, $sql, @inargs); # $key - primary index field name

    # Record (as array)
    my @result = $mso->record($sql, @inargs);

    # Record (as hash)
    my %result = $mso->recordh($sql, @inargs);

    # Field (as scalar)
    my $result = $mso->field($sql, @inargs);

    # SQL
    my $sth = $mso->execute($sql, @inargs);
    ...
    $sth->finish;

DESCRIPTION

For example: print($mso->field("select sysdate() from dual"));

new

    # MySQL connect
    my $mso = CTK::DBI->new(
            -dsn        => 'DBI:mysql:database=TEST;host=192.168.1.1',
            -user       => 'login',
            -pass       => 'password',
            -connect_to => 5,
            -request_to => 60
            #-attr      => {},
            #-prepare_attr => {},
            #-debug     => 1,
        );

Create the DBI object

connect

    my $dbh = $mso->connect;

See "dbh"

dbh

    my $dbh = $mso->dbh;

Returns DBH object (DB handler of DBI)

disconnect

    my $rc = $mso->disconnect;

Forced disconnecting. Please not use this method

error

    die $mso->error if $mso->error;

Returns error string

execute

    # SQL
    my $sth = $mso->execute($sql, @inargs);
    ...
    $sth->finish;

Executing the SQL

field

    # Fields (as scalar)
    my $result = $mso->field($sql, @inargs);

Get (select) field from database as scalar value

record, recordh

    # Record (as array)
    my @result = $mso->record($sql, @inargs);

    # Record (as hash)
    my %result = $mso->recordh($sql, @inargs);

Get (select) record from database as array or hash

table, tableh

    # Table select (as array)
    my @result = $mso->table($sql, @inargs);

    # Table select (as hash)
    my %result = $mso->tableh($key, $sql, @inargs); # $key - primary index field name

Get (select) table from database as array or hash

HISTORY

See Changes file

VARIABLES

$CTK::DBI::CTK_DBI_DEBUG

Debug mode flag. Default: 0

$CTK::DBI::CTK_DBI_ERROR

General error string

DEPENDENCIES

DBI

TO DO

See TODO file

BUGS

* none noted

SEE ALSO

DBI

AUTHOR

Serż Minus (Sergey Lepenkov) https://www.serzik.com <abalama@cpan.org>

COPYRIGHT

Copyright (C) 1998-2022 D&D Corporation. All Rights Reserved

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See LICENSE file and https://dev.perl.org/licenses/