NAME

DBIx::Wrapper::VerySimple - Simplify use of DBI

VERSION

0.04

SYNOPSIS

use DBIx::Wrapper::VerySimple;
$db = DBIx::Wrapper::VerySimple->new( $dsn, @other_args ); 
$hashref = $db->FetchHash($sql, @bind_values);
$arrayref = $db->FetchAll($sql, @bind_values);
$rv       = $db->Do($sql, @bind_values);
$original_args = $db->get_args();  # arrayref
$dbh      = $db->dbh();  # Raw DBI database handle

DESCRIPTION

Provides a wrapper around DBI.

Note: the reason we don't test the connection and attempt to reconnect is that this module is most likely used in a web environment with mod_perl and Apache::DBI, and Apache::DBI will attempt to reconnect if the database connection dies.

Per-Method Documentation

These are the public methods provided.

new

my $db = DBIx::Wrapper::VerySimple->new($dsn,$user,password);

$dsn is a DBI DSN, for example:

my $dsn = "DBI:mysql:database='Accounting'";

or a more complex example:

my $database = 'Accounting';
my $host     = 'data.ourdomain.com';  # Default is usually 'localhost'
my $port     = '4200';  # 3306 is the MySQl default
my $dsn = "DBI:mysql:database=$database;host=$hostname;port=$port";

FetchHash or fetch_hash

$hashref = $db->FetchHash( $sql, @bind_values );

Returns a HASH ref for one row. Throws an exception if execution fails.

FetchAll or fetch_all

$arrayref = $db->FetchAll( $sql, @bind_values );

Returns an array-ref of hash-refs. @bind_values are optional. Throws an exception if execution fails.

Do

my $result_code = Do( $sql, @bind_values );

Executes a non-select SQL statement Throws an exception if execution fails.

dbh

$db->dbh();

Returns the raw database handle from DBI.

get_args

$db->get-args();

Returns an ARRAY ref of the original args to new();

SEE ALSO

DBI, Apache::DBI

AUTHOR

Matisse Enzer <matisse@matisse.net>

COPYRIGHT

Copyright (c)2001-2006 by Matisse Enzer

This package is free software and is provided "as is" without express or implied warranty. It may be used, redistributed and/or modified under the terms of the Perl Artistic License (see http://www.perl.com/perl/misc/Artistic.html)