DbFramework::ForeignKey - Foreign Key class


NAME

DbFramework::ForeignKey - Foreign Key class


SYNOPSIS

  use DbFramework::ForeignKey;
  $fk   = new DbFramework::ForeignKey($name,\@attributes,$primary);
  $pk   = $fk->references($primary);
  $sql  = $fk->as_sql;
  $html = $fk->as_html_form_field(\%values);
  $s    = $fk->sql_where;


DESCRIPTION

The DbFramework::ForeignKey class implements foreign keys for a table.


SUPERCLASSES

DbFramework::Key


CLASS METHODS

new($name,\@attributes,$primary)

Returns a new DbFramework::ForeignKey object.

$name is the name of the foreign key. @attributes is a list of DbFramework::Attribute objects from a single DbFramework::Table object which make up the key. $primary is the DbFramework::Primary object which the foreign key references.


OBJECT METHODS

references($primary)

$primary should be a DbFramework::PrimaryKey object. If supplied it sets the primary key referenced by this foreign key. Returns the DbFramework::PrimaryKey object referenced by this foreign key.

as_html_form_field(\%values)

Returns an HTML selection box containing values and labels from the primary key columns in the related table. %values is a hash whose keys are the attribute names of the foreign key and whose values indicate the item in the selection box which should be selected by default. See html_select_field() in the DbFramework::PrimaryKey manpage.

sql_where()

Returns a string containing SQL 'WHERE' condition(s) to join the foreign key against the primary key of the related table.


SEE ALSO

the DbFramework::Key manpage, the DbFramework::PrimaryKey manpage and the DbFramework::Catalog manpage.


AUTHOR

Paul Sharpe <paul@miraclefish.com>


COPYRIGHT

Copyright (c) 1997,1998,1999 Paul Sharpe. England. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

 DbFramework::ForeignKey - Foreign Key class