CGI::Session::PostgreSQL(3pm)

CGI::Session::PostgreSQL3pm

Postgresql driver for cgi::session

Usage

    use CGI::Session;
    $session = new CGI::Session("driver:PostgreSQL", undef, {Handle=>$dbh});

For more examples, consult CGI::Session manual

Overview

CGI::Session::PostgreSQL is a CGI::Session driver to store session data in a PostgreSQL table. To write your own drivers for CGI::Session refere CGI::Session manual.

Storage

To store session data in PostgreSQL database, you first need to create a suitable table for it with the following command:

    CREATE TABLE sessions (
        id CHAR(32) NOT NULL,
        a_session TEXT NOT NULL
    );

You can also add any number of additional columns to the table, but the above "id" and "a_session" are required. If you want to store the session data in other table than "sessions", you will also need to specify TableName attribute as the first argument to new():

    use CGI::Session;
    $session = new CGI::Session("driver:PostgreSQL", undef,
                                                {Handle=>$dbh, TableName=>'my_sessions'});

Every write access to session records is done through PostgreSQL own row locking mechanism, enabled by `FOR UPDATE' clauses in SELECTs or implicitly enabled in UPDATEs and DELETEs.

Author

Cosimo Streppone <[email protected]>, heavily based on the CGI::Session::MySQL driver by Sherzod Ruzmetov, original author of CGI::Session.

From libcgi-session-perl 3.95-2 in Debian 3.1 (Sarge). Parsed by carta from the page's man source.