The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Alzabo::Table - Table objects

SYNOPSIS

  use Alzabo::Table;

  my $t = $schema->table('foo');

  foreach $pk ($t->primary_keys)
  {
     print $pk->name;
  }

DESCRIPTION

Objects in this class represent tables. They contain foreign key, index, and column objects.

METHODS

schema

Returns

The Alzabo::Schema object to which this table belongs.

name

Returns

The name of the table.

column ($name)

Returns

The Alzabo::Column object that matches the name given.

columns (@optional_list_of_column_names)

Returns

A list of Alzabo::Column objects that match the list of names given. If no list is provided, then it returns all column objects for the table.

has_column ($name)

Returns

A true or false value depending on whether or not the column exists in the table.

primary_key

A primary key is one or more columns which must be unique in each row of the table. For a multi-column primary key, than the values of the columns taken in order must be unique. The order of a multi-column key is significant as most RDBMS's will create an index on the primary key using the same column order as is specified and column order usually matters in indexes.

Returns

In array context, return an ordered list of column objects that make up the primary key for the table. In scalar context, it returns the first element of that list.

primary_key_size

Returns

The number of columsn in the table's primary key.

column_is_primary_key (Alzabo::Column object)

This method is really only needed if you're not sure that column belongs to the table. Otherwise just call the Alzabo::Column->is_primary_key method on the column object.

Returns

A boolean value indicating whether or not the column given is part of the table's primary key.

foreign_keys

Parameters

  • column => Alzabo::Column object

  • table => Alzabo::Table object

Returns

A list of Alzabo::ForeignKey objects from the given column to the given table, if they exist. In scalar context, returns the first item in the list. There is no guarantee as to what the first item will be.

foreign_keys_by_table (Alzabo::Table object)

Returns

A list of all the Alzabo::ForeignKey objects to the given table. In scalar context, returns the first item in the list. There is no guarantee as to what the first item will be.

foreign_keys_by_column (Alzabo::Column object)

Returns a list of all the Alzabo::ForeignKey objects that the given column is a part of, if any. In scalar context, returns the first item in the list. There is no guarantee as to what the first item will be.

all_foreign_keys

Returns

A list of all the Alzabo::ForeignKey objects for this table. In scalar context, returns the first item in the list. There is no guarantee as to what the first item will be.

index ($index_id)

This method expect an index id as returned by the Alzabo::Index->id method.

Returns

The Alzabo::Index object matching this id, if it exists in the table.

indexes

Returns

All the Alzabo::Index objects for the table.

comment

Returns

The comment associated with the table object, if any.

AUTHOR

Dave Rolsky, <autarch@urth.org>