SPOPS::Import::DBI::TableTransform::Pg - Table transformations for PostgreSQL
my $table = qq/ CREATE TABLE blah ( id %%INCREMENT%% primary key, name varchar(50) ) /; my $transformer = SPOPS::Import::DBI::TableTransform->new( 'pg' ); $transformer->increment( \$table ); print $table; # Output: # CREATE TABLE blah ( id INT primary key, # name varchar(50) )
PostgreSQL-specific type conversions for the auto-increment and other field types.
increment
Returns 'INT NOT NULL' -- relying on the sequence autocreated by 'SERIAL' can get you into trouble since long table names get truncated. Just create your own sequence and specify it in the 'sequence_name' key of your object config (see SPOPS::DBI::Pg).
increment_type
Returns 'INT'
datetime
Returns 'TIMESTAMP'
None known.
Add hook for extra statement
Since PostgreSQL supports a sequence-based increment type, think about adding a hook for an extra statement to be registered and modifying '%%INCREMENT%%' to be 'INT NOT NULL' and the extra statement to create a sequence of a given name.
SPOPS::Import::DBI::TableTransform
Copyright (c) 2002-2004 intes.net, inc.. All rights reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Chris Winters <chris@cwinters.com>
To install SPOPS, copy and paste the appropriate command in to your terminal.
cpanm
cpanm SPOPS
CPAN shell
perl -MCPAN -e shell install SPOPS
For more information on module installation, please visit the detailed CPAN module installation guide.