NAME
DBIx::SearchBuilder::Handle::Pg - A Postgres specific Handle object
SYNOPSIS
DESCRIPTION
This module provides a subclass of DBIx::SearchBuilder::Handle that compensates for some of the idiosyncrasies of Postgres.
METHODS
Connect
Connect takes a hashref and passes it off to SUPER::Connect; Forces the timezone to GMT it returns a database handle.
BuildDSN
Extend "BuildDNS" in DBIx::SearchBuilder::Handle to force client_encoding
to be UTF-8, so that character strings can be safely passed to, and retrieved from, the database. See "Encoding" in DBD::Pg.
Insert
Takes a table name as the first argument and assumes that the rest of the arguments are an array of key-value pairs to be inserted.
In case of insert failure, returns a Class::ReturnValue object preloaded with error info.
InsertQueryString
Postgres sepcific overriding method for "InsertQueryString" in DBIx::SearchBuilder::Handle.
IdSequenceName TABLE
Takes a TABLE name and returns the name of the sequence of the primary key for that table.
BinarySafeBLOBs
Return undef, as no current version of postgres supports binary-safe blobs
ApplyLimits STATEMENTREF ROWS_PER_PAGE FIRST_ROW
takes an SQL SELECT statement and massages it to return ROWS_PER_PAGE starting with FIRST_ROW;
_MakeClauseCaseInsensitive FIELD OPERATOR VALUE
Takes a field, operator and value. performs the magic necessary to make your database treat this clause as case insensitive.
Returns a FIELD OPERATOR VALUE triple.
DistinctQuery STATEMENTREF
takes an incomplete SQL SELECT statement and massages it to return a DISTINCT result set.
SimpleDateTimeFunctions
Returns hash reference with specific date time functions of this database for "DateTimeFunction" in DBIx::SearchBuilder::Handle.
ConvertTimezoneFunction
Custom implementation of "ConvertTimezoneFunction" in DBIx::SearchBuilder::Handle.
In Pg time and timestamp data types may be "with time zone" or "without time zone". So if Field argument is timestamp "with time zone" then From argument is not required and is useless. Otherwise From argument identifies time zone of the Field argument that is "without time zone".
For consistency with other DBs use timestamp columns without time zones and provide From argument.