NAME
GenDBI.pm - basic line mode and DBI interfaces to Genezzo
SYNOPSIS
# Basic line-mode usage
use Genezzo::GenDBI; # see gendba.pl
my $fb = Genezzo::GenDBI->new(exe => $0,
gnz_home => $mygnz_home,
dbinit => $do_init);
$fb->Parseall($myquery); # process a statement
$fb->Interactive(); # invoke line mode
# DBI-style usage - see perldoc DBI, <http://dbi.perl.org/>
my $dbh = Genezzo::GenDBI->connect($mygnz_home);
my $rv = Genezzo::GenDBI->do("startup");
my @row_ary = $dbh->selectrow_array($statement);
my $ary_ref = $dbh->selectrow_arrayref($statement);
my $hash_ref = $dbh->selectrow_hashref($statement);
my $sth = $dbh->prepare($statement);
$rv = $sth->execute;
@row_ary = $sth->fetchrow_array;
$ary_ref = $sth->fetchrow_arrayref;
$hash_ref = $sth->fetchrow_hashref;
$rv = $sth->rows;
$rv = Genezzo::GenDBI->do("commit");
$rv = Genezzo::GenDBI->do("shutdown");
DESCRIPTION
The Genezzo modules implement a hierarchy of persistent hashes using
a fixed amount of memory and disk. This system is designed to be
easily configured and extended with custom functions, persistent
storage representations, and novel data access methods. In its
current incarnation it supports a limited SQL-like language using
DBI-style interfaces.
EXPORT
VERSION, RELSTATUS, RELDATE: version, release status, and release date
TODO
- This module is a bit of a catch-all, since it contains a DBI-style interface, an interactive loop with an interpreter and some presentation code, plus some expression evaluation and query planning logic. It needs to get split up.
AUTHOR
Jeffrey I. Cohen, jcohen@genezzo.com
SEE ALSO
perl(1), gendba.pl -man
, perldoc DBI
, http://dbi.perl.org/
Copyright (c) 2003, 2004 Jeffrey I Cohen. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Address bug reports and comments to: jcohen@genezzo.com