| Class::DBI::Pg(3pm) | User Contributed Perl Documentation | Class::DBI::Pg(3pm) |
Class::DBI::Pg - Class::DBI extension for Postgres
use strict;
use base qw(Class::DBI::Pg);
__PACKAGE__->set_db(Main => 'dbi:Pg:dbname=dbname', 'user', 'password');
__PACKAGE__->set_up_table('film');
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');
Declares the Class::DBI class specified by TABLENAME. HASHREF can specify options to when setting up the table.
$class->set_up_table($table, { ColumnGroup => 'Essential' });
The default is 'All'
Returns the postgres version that you are currently using.
Daisuke Maki "dmaki@cpan.org"
Sebastian Riedel, "sri@oook.de" IKEBE Tomohiro, "ikebe@edge.co.jp"
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Class::DBI Class::DBI::mysql DBD::Pg
| 2022-06-11 | perl v5.34.0 |