Marcus Ramberg > DBIx-Class-0.05999_04 > DBIx::Class::PK::Auto

Download:
DBIx-Class-0.05999_04.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  12
Open  18
Stalled  11
View/Report Bugs
Source   Latest Release: DBIx-Class-0.082810

NAME ^

DBIx::Class::PK::Auto - Automatic primary key class

SYNOPSIS ^

  # In your table classes (replace PK::Auto::SQLite with your database)
  __PACKAGE__->load_components(qw/PK::Auto::SQLite Core/);
  __PACKAGE__->set_primary_key('id');

DESCRIPTION ^

This class overrides the insert method to get automatically incremented primary keys.

You don't want to be using this directly - instead load the appropriate one for your database, e.g. PK::Auto::SQLite, in your table classes:

  __PACKAGE__->load_components(qw/PK::Auto::SQLite Core/);

Note that PK::Auto::SQLite is specified as the leftmost argument.

Alternatively, you can load the components separately:

  __PACKAGE__->load_components(qw/Core/);
  __PACKAGE__->load_components(qw/PK::Auto::SQLite/);

This can be used, for example, if you have different databases and need to determine the appropriate PK::Auto class at runtime.

LOGIC ^

PK::Auto does this by letting the database assign the primary key field and fetching the assigned value afterwards.

METHODS ^

insert

Overrides insert so that it will get the value of autoincremented primary keys.

sequence

Manually define the correct sequence for your table, to avoid the overhead associated with looking up the sequence automatically.

AUTHORS ^

Matt S. Trout <mst@shadowcatsystems.co.uk>

LICENSE ^

You may distribute this code under the same terms as Perl itself.

syntax highlighting: