The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Maplat::Web::PostgresDB - Web module for accessing PostgreSQL databases

SYNOPSIS

This module is a wrapper around DBI/DBD::Pg.

DESCRIPTION

With this web module, you can easely maintain connections to multiple databases (just declare multiple modules with different modnames).

Configuration

        <module>
                <modname>maindb</modname>
                <pm>PostgresDB</pm>
                <options>
                        <dburl>dbi:Pg:dbname=Maplat_DB</dburl>
                        <dbuser>Maplat_Server</dbuser>
                        <dbpassword>SECRET</dbpassword>
                </options>
        </module>

As an alternative, the DB connection info can be included from an external file. The file should look like this:

        <postgresql>
                <dburl>dbi:Pg:dbname=Maplat_DB</dburl>
                <dbuser>Maplat_Server</dbuser>
                <dbpassword>SECRET</dbpassword>
        </postgresql>
        

with the options section of the module like this:

        <options>
                <include>/path/to/configuration.xml</include>
        </options>

A combination of these two is possible, the setting from the included file overwriting the directly configured ones.

dburl is the DBI connection string, see DBD::Pg.

AutoCommit

Get/Set the DBD::Pg "AutoCommit" setting

RaiseError

Get/Set the DBD::Pg "RaiseError" setting

errstr

Get the DBI errorstring.

do

Execute a DBI statement with "do"

prepare

Prepare a (non-cached) Statement.

prepare_cached

Prepare a server cached statement (may fall back to non-cached transparently, see DBD::Pg and PostgreSQL documentation for details).

quote

Quote a variable for use in PostgreSQL statements.

commit

Commit transaction.

rollback

Rollback transaction.

checkDBH

Internal function. Checks if the database handle is valid and reconnects if needed.

cleanup

Internal callback function, makes sure there are no open transactions after rendering a page.

Dependencies

This module is a basic module which does not depend on other web modules.

SEE ALSO

Maplat::Web DBD::Pg

AUTHOR

Rene Schickbauer, <rene.schickbauer@gmail.com>

COPYRIGHT AND LICENSE

Copyright (C) 2008-2011 by Rene Schickbauer

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.