man DBIx::Class::Table () - Basic table methods

NAME

DBIx::Class::Table - Basic table methods

SYNOPSIS

DESCRIPTION

This class is responsible for defining and doing table-level operations on DBIx::Class classes.

METHODS

add_columns

  __PACKAGE__->add_columns(qw/col1 col2 col3/);

Adds columns to the current class and creates accessors for them.

search_literal

  my @obj    = $class->search_literal($literal_where_cond, @bind);
  my $cursor = $class->search_literal($literal_where_cond, @bind);

count_literal

  my $count = $class->count_literal($literal_where_cond);

count

  my $count = $class->count({ foo => 3 });

search

  my @obj    = $class->search({ foo => 3 }); # "... WHERE foo = 3"
  my $cursor = $class->search({ foo => 3 });

To retrieve all rows, simply call CWsearch() with no condition parameter,

  my @all = $class->search(); # equivalent to search({})

If you need to pass in additional attributes (see Attributes in DBIx::Class::ResultSet for details) an empty hash indicates no condition,

  my @all = $class->search({}, { cols => [qw/foo bar/] }); # "SELECT foo, bar FROM $class_table"

search_like

Identical to search except defaults to 'LIKE' instead of '=' in condition

table

  __PACKAGE__->table('tbl_name');

Gets or sets the table name.

find_or_create

  $class->find_or_create({ key => $val, ... });

Searches for a record matching the search condition; if it doesn't find one, creates one and returns that instead.

has_column

  if ($obj->has_column($col)) { ... }

Returns 1 if the class has a column of this name, 0 otherwise.

column_info

  my $info = $obj->column_info($col);

Returns the column metadata hashref for a column.

columns

  my @column_names = $obj->columns;

AUTHORS

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

LICENSE

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