Alzabo (version 0.64) - Alzabo::ForeignKey

Index



NAME

Alzabo::ForeignKey - Foreign key (relation) objects


SYNOPSIS

  use Alzabo::ForeignKey;
  foreach my $fk ($table->foreign_keys)
  {
      print $fk->cardinality;
  }


DESCRIPTION

A foreign key is an object defined by several properties. It represents a relationship from a column or columns in one table to a column or columns in another table.

This relationship is defined by its cardinality (one to one, one to many, or many to one) and its dependencies (whether or not table X is dependent on table Y, and vice versa).

Many to many relationships are not allowed. However, you may indicate such a relationship when using the Alzabo::Create::Schema->add_relation method method, and it will create the necessary intermediate linking table for you.


METHODS

table_from

table_to

Returns

The relevant Alzabo::Table object.

columns_from

columns_to

Returns

The relevant Alzabo::Column object(s) for the property.

column_pairs

Returns

An array of array references. The references are to two column array of Alzabo::Column objects. These two columns correspond in the tables being linked together.

cardinality

Returns

A two element array containing the two portions of the cardinality of the relationship. Each portion will be either '1' or 'n'.

from_is_dependent

to_is_dependent

Returns

A boolean value indicating whether there is a dependency from one table to the other.

is_one_to_one

is_one_to_many

is_many_to_one

Returns

A boolean value indicating what kind of relationship the object represents.


AUTHOR

Dave Rolsky, <autarch@urth.org>