NAME
perfSONAR_PS::DB::SQL::Base - A class that provides data access for SQL databases
DESCRIPTION
This module provides access to the relevant DBI wrapped methods given the relevant contact points for the database. Any service specific SQL DB handler should ingerit from this class.
SYNOPSIS
package perfSONAR_PS::DB::SQL::PingER;
# extend from this class
use perfSONAR_PS::DB::SQL::Base;
use base perfSONAR_PS::DB::SQL::Base;
1;
METHODS
new
constructor accepts hashref as parameter
returns object
init
accepts hashref as single parameter and initializes object
returns
0 = if everything is okay
-1 = somethign went wrong
connect
opens a connection to the database or reuses the cached one
Returns 0 = if everything is okay -1 = somethign went wrong
closeDB
closes the connection to the database Returns 0 = if everything is okay -1 = somethign went wrong
alive
checks if db handle is alive
Returns
0 = if everything is okay
-1 = somethign went wrong
getFromTable
accepts single hash param with keys:
query => Rose::DB::Object::QueryBuilder type of query,
table => table name
validate => table validation HASHref constant
index => name of the indexing key for result
returns result as hashref keyd by $index
or undef and sets ERRORMSG
updateTable
accepts singel hashref param with keys:
set => hashref { for example 'ip_name' => $ip_name, 'ip_number' => $ip_number },
table => table_name
where => where clause ( formatted as Rose::DB::Object query )
returns
0 if OK
-1 = somethign went wrong
insertTable
accepts single hashref with keys:
insert => { 'ip_name' => $ip_name, 'ip_number' => $ip_number },
table => table_name
returns
0 or last inserted id number
-1 = somethign went wrong
createTable
create table from template - second parameter is the name of the template table ( must exist )
returns
0 - evrything is OK
-1 - something is wrong
validateQuery
vlaidated supplied query parameters against defined fields for particular table
optional arg $required is a hash of the required table fields
returns
0 = if everything is okay
-1 = somethign went wrong
fixTimestamp
fix timestamp
returns
fixed timestamp or undef if its not parseable
booleanToInt
converts any boolean arg to 0/1 int
tableExists
check presence of the table
Returns
0 = no table
1 = table exists