NAME Class::DBI::Pg - Class::DBI extension for Postgres SYNOPSIS use strict; use base qw(Class::DBI::Pg); __PACKAGE__->set_db(Main => 'dbi:Pg:dbname=dbname', 'user', 'password'); __PACKAGE__->set_up_table('film'); DESCRIPTION Class::DBI::Pg automate the setup of Class::DBI columns and primary key for Postgres. select Postgres system catalog and find out all columns, primary key and SERIAL type column. create table. CREATE TABLE cd ( id SERIAL NOT NULL PRIMARY KEY, title TEXT, artist TEXT, release_date DATE ); setup your class. package CD; use strict; use base qw(Class::DBI::Pg); __PACKAGE__->set_db(Main => 'dbi:Pg:dbname=db', 'user', 'password'); __PACKAGE__->set_up_table('cd'); This is almost the same as the following way. package CD; use strict; use base qw(Class::DBI); __PACKAGE__->set_db(Main => 'dbi:Pg:dbname=db', 'user', 'password'); __PACKAGE__->table('cd'); __PACKAGE__->columns(Primary => 'id'); __PACKAGE__->columns(All => qw(id title artist release_date)); __PACKAGE__->sequence('cd_id_seq'); METHODS set_up_table TABLENAME HASHREF Declares the Class::DBI class specified by TABLENAME. HASHREF can specify options to when setting up the table. ColumnGroup You can specify the column group that you want your columns to be in. $class->set_up_table($table, { ColumnGroup => 'Essential' }); The default is 'All' Primary Overrides primary key setting. This can be useful when working with views instead of tables. pg_version Returns the postgres version that you are currently using. AUTHOR Daisuke Maki "dmaki@cpan.org" AUTHOR EMERITUS Sebastian Riedel, "sri@oook.de" IKEBE Tomohiro, "ikebe@edge.co.jp" LICENSE This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO Class::DBI Class::DBI::mysql DBD::Pg