NAME
Hub::Data::DBTable - Wrapper for DBI (expecting a MySQL backend)
Part of the Hub Library
SYNOPSIS
use Hub qw(:standard);
my $user = mkinst( 'DBTable', 'user' );
$user->select( -cmd => 'get_admin_user' );
DESCRIPTION
This is implemented for access to a database which is defined by
/sys/dbi/connect/dsn
/sys/dbi/connect/user
/sys/dbi/connect/clave
And supported by files
db-struct.hf
db-commands.hf
Which make it pretty specific to a runtime web application ;)
METHODS
do | new | select | update |
insert | refresh | select_all |
- do
-
Execute an SQL query
Usage: do [options] Usage: do query
Uses the same -cmd and -data processing as select
- insert
-
Insert a record
Usage: insert -data => \%hash, [options]
options: -nonull Convert undefined (NULL) values to '' -forcenull Convert empty ('') values to undefined (NULL)
Where the keys of the data hash match the column names.
- new
-
Constructor.
Usage: new LIST
Parameters are passed to the standard initialization method refresh.
- refresh
-
Return instance to initial state.
Usage: refresh LIST
Called implictly by new, and when persistent interpreters (such as mod_perl) would have called new.
- select
-
Select records from the table
Usage: select [options] Usage: select query
OPTIONS
-cmd The command (which is read from db-commands.hf) -data The data used to populate the query
Using the -cmd option allows you to store your SQL queries in the external file "db-commands.hf" rather than passing in the query.
- select_all
-
Select all columns from a table
Usage: select_all -by => \@columns, -using => \%column_to_value_hash Usage: select_all [options]
In the first form:
-by => [ "pkey" ], -using => { pkey => 1001 }
Will build the where clause by extracing the key/val from "-using" for each column name in "-by".
Or, each option is a WHERE condition. For instance, the option:
-pkey => 1001
Would add "WHERE pkey = '1001'" to the select query.
- update
-
Update an existion record
Usage: update -by => \@names, -set => \@names, -using => \%data, [options]
where: -by Column names for the WHERE clause -set Column names for the SET clause (otherwise all columns) -using Data for -by and -set clauses options: -nonull Convert undefined (NULL) values to '' -forcenull Convert empty ('') values to undefined (NULL)
INTERNAL
DESTROY | _esc |
- DESTROY
-
Called implicitly by the framework.
Disconnect nicely.
AUTHOR
Ryan Gies
COPYRIGHT
Copyright (c) 2006 Livesite Networks, LLC. All rights reserved.
Copyright (c) 2000-2005 Ryan Gies. All rights reserved.
UPDATED
This file created by on at