Alzabo (version 0.92)

Doc index

TOC | Top

NAME

Alzabo::Runtime::ForeignKey - Foreign key objects

TOC | Top

SYNOPSIS

  $fk->register_insert( $value_for_column );
  $fk->register_update( $new_value_for_column );
  $fk->register_delete( $row_being_deleted );
TOC | Top

DESCRIPTION

Objects in this class maintain referential integrity. This is really only useful when your RDBMS can't do this itself (like MySQL without InnoDB).

TOC | Top

INHERITS FROM

Alzabo::ForeignKey

Note: all relevant documentation from the superclass has been merged into this document.

TOC | Top

METHODS

table_from

table_to

Returns the relevant Alzabo::Runtime::Table object.

TOC | Top

columns_from

columns_to

Returns the relevant Alzabo::Runtime::Column object(s) for the property as an array.

TOC | Top

cardinality

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

TOC | Top

from_is_dependent

to_is_dependent

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

TOC | Top

is_one_to_one

is_one_to_many

is_many_to_one

Returns a boolean value indicating what kind of relationship the object represents.

TOC | Top

is_same_relationship_as ($fk)

Given a foreign key object, this returns true if the two objects represent the same relationship. However, the two objects may represent the same relationship from different table's points of view.

TOC | Top

register_insert ($new_value)

This method takes the proposed column value for a new row and makes sure that it is valid based on relationship that this object represents.

Throws: Alzabo::Exception::ReferentialIntegrity

TOC | Top

register_update ($new_value)

This method takes the proposed new value for a column and makes sure that it is valid based on relationship that this object represents.

Throws: Alzabo::Exception::ReferentialIntegrity

TOC | Top

register_delete (Alzabo::Runtime::Row object)

Allows the foreign key to delete rows dependent on the row being deleted. Note, this can lead to a chain reaction of cascading deletions. You have been warned.

Throws: Alzabo::Exception::ReferentialIntegrity

TOC | Top

id

Returns a string uniquely identifying the foreign key.

TOC | Top

comment

Returns the comment associated with the foreign key object, if any.

TOC | Top

AUTHOR

Dave Rolsky, <autarch@urth.org>


Table of Contents

- NAME
- SYNOPSIS
- DESCRIPTION
- INHERITS FROM
- METHODS
      - table_from
      - table_to
      - columns_from
      - columns_to
      - cardinality
      - from_is_dependent
      - to_is_dependent
      - is_one_to_one
      - is_one_to_many
      - is_many_to_one
      - is_same_relationship_as ($fk)
      - register_insert ($new_value)
      - register_update ($new_value)
      - register_delete (Alzabo::Runtime::Row object)
      - id
      - comment
- AUTHOR