NAME

DBIx::Connection::PostgreSQL::SQL - PostgreSQL catalog sql abstractaction layer.

SYNOPSIS

use DBIx::Connection::PostgreSQL::SQL;

EXPORT

None

DESCRIPTION

Represents sql abstractaction layer

ATTRIBUTES

sql

Stores definition of the following sql

- column_info
- index_info
- unique_index_column
- foreign_key_info
- trigger_info
- routine_info

METHODS

sequence_value

Returns sql statement that returns next sequence value

reset_sequence

Returns sql statement that restarts sequence.

has_sequence

Returns sql statement that check is sequence exists in database schema

set_session_variables

Sets session variables

It uses the following sql command pattern:

SET variable TO value;

DBIx::Connection::PostgreSQL::SQL->set_session_variables($connection, {DateStyle => 'US'});
update_lob

Updates lob. (Large Object) Takes connection object, table name, lob column_name, lob content, hash_ref to primary key values. optionally lob size column name.

fetch_lob

Retrieve lobs. Takes connection object, table name, lob column_name, hash_ref to primary key values. optionally lob size column name. By default max lob size is set to 1 GB DBIx::Connection::Oracle::SQL::LOB_MAX_SIZE = (1024 * 1024 * 1024);

_create_lob

Creates lob

_read_lob

Reads lob

_unlnik_lob

Removes lob.

_get_lob_size

Returns lob size.

_get_lob_id

Returns lob oid.

tables_info
table_info
column_info
unique_index_column
index_info
foreign_key_info

PKTABLE_CAT ( UK_TABLE_CAT ): The primary (unique) key table catalog identifier. This field is NULL (undef) if not applicable to the data source, which is often the case. This field is empty if not applicable to the table. PKTABLE_SCHEM ( UK_TABLE_SCHEM ): The primary (unique) key table schema identifier. This field is NULL (undef) if not applicable to the data source, and empty if not applicable to the table. PKTABLE_NAME ( UK_TABLE_NAME ): The primary (unique) key table identifier. PKCOLUMN_NAME (UK_COLUMN_NAME ): The primary (unique) key column identifier. FKTABLE_CAT ( FK_TABLE_CAT ): The foreign key table catalog identifier. This field is NULL (undef) if not applicable to the data source, which is often the case. This field is empty if not applicable to the table. FKTABLE_SCHEM ( FK_TABLE_SCHEM ): The foreign key table schema identifier. This field is NULL (undef) if not applicable to the data source, and empty if not applicable to the table. FKTABLE_NAME ( FK_TABLE_NAME ): The foreign key table identifier. FKCOLUMN_NAME ( FK_COLUMN_NAME ): The foreign key column identifier. KEY_SEQ ( ORDINAL_POSITION ): The column sequence number (starting with 1). UPDATE_RULE ( UPDATE_RULE ): The referential action for the UPDATE rule. The following codes are defined: DELETE_RULE ( DELETE_RULE ): The referential action for the DELETE rule. The codes are the same as for UPDATE_RULE. FK_NAME ( FK_NAME ): The foreign key name. PK_NAME ( UK_NAME ): The primary (unique) key name. DEFERRABILITY ( DEFERABILITY ): T

trigger_info
routine_info

Returns array of function info for the specified function name.

SEE ALSO

DBIx::Connection

COPYRIGHT AND LICENSE

The DBIx::Connection::PostgreSQL::SQL module is free software. You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.

AUTHOR

Adrian Witas, adrian@webapp.strefa.pl