NAME
Role::Pg::Sequences - Client Role for handling PostgreSQL Sequences
VERSION
version 0.002
DESCRIPTION
This role handles the use of Sequences in a PostgreSQL database.
NAME
Role::Pg::Sequences
ATTRIBUTES
sequences_dbh
Role::Pg::Sequences tries to guess your dbh. If it isn't a standard dbi::db named dbh, or constructed in a dbix::class schema called schema, you have to return the dbh from _build_sequences_dbh.
sequences_schema
Should be set to the name of the database schema to hold the sequence. Default "public".
METHODS
create_sequence
$self
->create_sequence(
sequence
=>
'my_sequence'
);
Optional parameters:
temporary -
if
set, means that the sequence is temporary and will disappear
when
the current session is closed
increment - the value that the sequence will be incremented by
minvalue - the minimumn value of the sequence. Default 1
maxvalue - the maximum value of the sequence. Default 2^63-1
start - Which value to be the first. Default minvalue
cache - How many sequence numbers to cache
Creates a sequence.
An optional password can be added. The user (or group) is then created with an encrypted password.
drop_sequence
$self
->drop_sequence(
sequence
=>
'my_sequence'
);
Drops a sequence.
sequence_exists
"It's there"
if
$self
->sequence_exists(
sequence
=> 'my_sequence');
Returns true if the sequence exists.
nextval
my
$sequence_value
=
$self
->nextval(
sequence
=>
'my_sequence'
);
Increments and returns the next value of the sequence
setval
$self
->nextval(
sequence
=>
'my_sequence'
,
value
=>
$new_value
);
Returns the new value
The optional parameter is_called determines
if
the value is already incremented. Set this parameter to a false value
if
you want the
next
nextval to NOT increment the value.
Sets the value of the sequence
lastval
my
$sequence_value
=
$self
-lastval;
Returns the latest value of any sequence
AUTHOR
Kaare Rasmussen <kaare@cpan.org>.
COPYRIGHT
Copyright (C) 2015, Kaare Rasmussen
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.
AUTHOR
Kaare Rasmussen <kaare at cpan dot net>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015 by Kaare Rasmussen.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.