NAME
    DBIx::Lookup::Field - Create a lookup hash from a database table

VERSION
    version 1.100850

SYNOPSIS
      use DBI;
      use DBIx::Lookup::Field qw(dbi_lookup_field);

      my $dbh = DBI->connect('...', '...', '...');
      my $inst_id = dbi_lookup_field(
          DBH   => $dbh,
          TABLE => 'institution',
          KEY   => 'name',
          VALUE => 'id',
      );

      print "Inst_A has id ", $inst_id->{Inst_A};

DESCRIPTION
    This module provides a way to construct a hash from a database table.
    This is useful for the situation where you have to perform many lookups
    of a field by using a key from the same table. If, for example, a table
    has an id field and a name field and you often have to look up the name
    by its id, it might be wasteful to issue many separate SQL queries.
    Having the two fields as a hash speeds up processing, although at the
    expense of memory.

    The functions can be exported individually or with the ":all" tag.

FUNCTIONS
  dbi_lookup_field()
    This function creates a hash from two fields in a database table on a
    DBI connection. One field acts as the hash key, the other acts as the
    hash value. It expects a parameter hash and returns a reference to the
    lookup hash.

    The following parameters are accepted. Parameters can be required or
    optional. If a required parameter isn't given, an exception is raised
    (i.e., it dies).

    DBH The database handle through which to access the table from which to
        create the lookup. Required.

    TABLE
        The name of the table that contains the key and value fields.
        Required.

    KEY The field name of the field that is to act as the hash key.
        Required.

    VALUE
        The field name of the field that is to act as the hash value.
        Required.

    WHERE
        A SQL 'WHERE' clause with which to restrict the 'SELECT' statement
        that is used to create the hash. Optional.

  dbi_lookup_field_with_reverse()
    This function takes the same parameters as "dbi_lookup_field()" but in
    addition to the lookup hash, it also returns a reversed hash where you
    can lookup the table keys by the table values.

      my ($lookup, $reverse) = dbi_lookup_field_with_reverse(...);

    Note that if a value occurs more than once, only one of the potential
    keys will win (the one that occurs first in the lookup hash's key
    order), so be warned.

INSTALLATION
    See perlmodinstall for information and options on installing Perl
    modules.

BUGS AND LIMITATIONS
    No bugs have been reported.

    Please report any bugs or feature requests through the web interface at
    <http://rt.cpan.org/Public/Dist/Display.html?Name=DBIx-Lookup-Field>.

AVAILABILITY
    The latest version of this module is available from the Comprehensive
    Perl Archive Network (CPAN). Visit <http://www.perl.com/CPAN/> to find a
    CPAN site near you, or see
    <http://search.cpan.org/dist/DBIx-Lookup-Field/>.

    The development version lives at
    <http://github.com/hanekomu/DBIx-Lookup-Field/>. Instead of sending
    patches, please fork this project using the standard git and github
    infrastructure.

AUTHOR
      Marcel Gruenauer <marcel@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2001 by Marcel Gruenauer.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.

