Chris Winters > SPOPS > SPOPS::Import::DBI::TableTransform::Pg

Download:
SPOPS-0.87.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 3.04   Source  

NAME ^

SPOPS::Import::DBI::TableTransform::Pg - Table transformations for PostgreSQL

SYNOPSIS ^

 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) )

DESCRIPTION ^

PostgreSQL-specific type conversions for the auto-increment and other field types.

METHODS ^

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'

BUGS ^

None known.

TO DO ^

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.

SEE ALSO ^

SPOPS::Import::DBI::TableTransform

COPYRIGHT ^

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.

AUTHORS ^

Chris Winters <chris@cwinters.com>

syntax highlighting: