whoops - didn't mean to send that to the list...

sorry for wasting (even more) bandwidth

--Geoff

> -----Original Message-----
> From: Geoffrey Young [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, January 06, 2000 3:26 PM
> To: '[EMAIL PROTECTED]'
> Subject: RE: ANNOUNCE: DBIx::Recordset-0.20
> 
> 
> just FYI, note the typo
> 
> - DBD::Oracle (requires DBD::Orcale 0.60 or higher)
> 
> :)
> 
> --Geoff
> 
> > -----Original Message-----
> > From: Gerald Richter [mailto:[EMAIL PROTECTED]]
> > Sent: Thursday, January 06, 2000 3:27 PM
> > To: Dbi-Users@Isc. Org; Modperl-Announce
> > Subject: ANNOUNCE: DBIx::Recordset-0.20
> > 
> > 
> > The URL
> > 
> >     
> ftp://ftp.dev.ecos.de/pub/perl/dbi/DBIx-Recordset-0.20-beta.tar.gz
> > 
> > has entered CPAN as
> > 
> >   file: $CPAN/authors/id/GRICHTER/DBIx-Recordset-0.20-beta.tar.gz
> >   size: 74149 bytes
> >    md5: 1c62da99c88b86474064a5de8f01a931
> > 
> > While the last release of DBIx::Recordset was really a long 
> > time ago I have
> > continously worked on it and enhanced it (see Changes below) 
> > and it's tested
> > with even more DBD drivers now.
> > I just didn't have the time to complete the docs and make a 
> > new release.
> > Hopefully this will change in the future. Now I have taken 
> > the time and here
> > is it...
> > 
> > Enjoy
> > 
> > Gerald
> > 
> > 
> > DBIx::Recordset is a perl module which handles a lot of 
> > always repeating
> > tasks in database access for you.
> > 
> > The goal is to make standard database access 
> > (select/insert/update/delete)
> > easier to handle (e.g. web application or scripts to enter/retrieve
> > data to/from a database). Special attention is made on web 
> > applications to
> > make
> > it possible to handle the state-less access and to process 
> > the posted data
> > of formfields.
> > The programmer only has to supply the absolutely necessary 
> > information, the
> > rest is done by DBIx::Recordset.
> > 
> > The main features of DBIx::Recordset are:
> > 
> > - it has a compact interface, normaly only one function call 
> > is necessary
> >   for setup and data retrival/inseration/deletion
> > 
> > - it takes care about type conversion and quoting
> > 
> > - it is able to access/modify tables via arrays and hashs
> > 
> > - it can automaticly create sub-objects for tables which are 
> > logical linked
> >   together
> > 
> > - it can automatily create joins based on logical links
> > 
> > - it has input/output filters on a per field/per type basis
> > 
> > - it can create WHERE expression from a hash, which is 
> > especially usefull in
> >   a cgi environement, where you can simply pass all paramters 
> > posted to your
> > cgi
> >   script to DBIx::Recordset and DBIx::Recordset creates an 
> > corresponding
> > SELECT.
> > 
> > - it can create previous/next buttons for html output
> > 
> > - it works together with HTML::Embperl for easily genration 
> > of HTML output
> > 
> > - it has an own database abtraction class DBIx::Compat which 
> > gives all the
> >   necessary information, so that DBIx::Recordset is able to 
> work with
> >   different database systems
> > 
> > - The new class DBIx::Database is able to retrieve and store 
> > meta infomation
> >   of the database in a centralised location, which can be 
> > used for later
> >   setup. This is also usefull when running under mod_perl, 
> > because you can
> > do
> >   all the setup and configuration work at webserver startup 
> > time, speeding
> > up
> >   your scripts when a actual request is processed.
> > 
> > 
> > An introduction can be viewed online at
> > 
> >   http://perl.apache.org/embperl/Intrors.pod.cont.html
> > 
> > 
> > DBIx::Recordset use the DBI API to access the database, so it 
> > should work
> > with
> > every database for which a DBD driver is available. I (or 
> > other people) have
> > successfully used DBIx::Recordset with the following DBD drivers:
> > 
> > - DBD::mSQL
> > - DBD::mysql
> > - DBD::Pg
> > - DBD::Solid
> > - DBD::ODBC
> > - DBD::Oracle (requires DBD::Orcale 0.60 or higher)
> > - DBD::Sybase
> > - DBD::CSV
> > - DBD::Informix
> > 
> > Changes since 0.19-beta:
> > 
> >   - Fixed a problem with perl 5.004_04. Spotted by Paul J. Schinder.
> >   - Added entry for DBD::Informix in Compat.pm send by Kelly Peet
> >   - Added outer join syntax for DBD::Informix
> >   - undef in !Filter passed to Recordset constructor overrides
> >     filter-function for TableAttr.
> >   - Fixed a problem with PrevNextForm and MoreRecord spotted by
> >     Richard Chen and David M. Davission.
> >   - Fixed some problems with eg/search.pl with help from
> >     Richard Chen.
> >   - Added date and time datatype to PostgreSQL quoting with help
> >     from James Bishop.
> >   - Added LastError function which returns the last error message
> >     and code. This solves problems where the DBI object is already
> >     out of scope and the $DBI::errstr isn't available anymore.
> >   - Now all setup parameters (the ones starting with !), can also
> >     be preset via DBIx::Database -> TableAttr.
> >   - Fix a problem, that an error that sets $@ inside of DESTROY
> >     will clear out an earlier error message. Based on a patch from
> >     Dean Brettle.
> >   - !Filter can take a thrid argument, which will cause
> >     DBIx::Recordset to always execute the Input Filter
> >   - Fixed a problem inside Flush, which will report sometime
> >     'Not a scalar reference..'
> >   - DBIx::Recordset handle uppercase field and tablesnames correctly
> >     now. This is important to work with Oracle.
> >   - New Parameter !TableFilter allows you to specify only a subset
> >     of tables from the database/tablespace to work with
> >   - !TableFilter is taken in account as prefix when searching
> >     for links
> >   - Added NeedNullInCreate for ODBC to work with MS SQL Server
> >   - Recordset Object didn't get the DBHandle from Database object if
> >     specified as !DataSource. Now it does. (Database object must
> >     be created with !KeepOpen)
> >   - !Filter can take rqINSERT or rqUPDATE as Argument after subref,
> >     which causes the Filter to always execute on INSERT 
> and/or UPDATE,
> >     regardless, if there is a value for the field or not.
> >   - Added methods TableName, TableNameWithoutFilter, TableFilter and
> >     PrimKey.
> >   - Support multiple Database object with different !TableFilter.
> >   - !LongNames is now also supported for SELECTs which 
> select not all,
> >     but a specified number of fields (i.e. fields are ne '*').
> >   - DBIx::Database TableLink method, returns all Links for a given
> >     table when no linkname is given.
> >   - Added more tests to ensure that new feature do not 
> break old ones.
> >   - removed call to non existing method $dbh->begin and call
> >     $dbh->commit and $dbh->rollback only when AutoCommit is off, so
> >     the DBIx::Recordset transaction methods, can be called 
> > regardless, if
> >     the DB supports transactions or not. Patch from Alexander 
> > Smishlajev.
> >   - make clean removes test.log and make realclean remove privious
> >     configuration. Patch from Alexander Smishlajev.
> >   - !DataSource can be a DBI database handle. Patch from Alexander
> > Smishlajev.
> >   - New method Dirty check if there is at leat one dirty row 
> > in a recordset.
> >     Patch from Alexander Smishlajev.
> >   - DROP test tables at end of test. Patch from Alexander 
> Smishlajev.
> >   - DBIx::Database now makes an connect to the database if 
> > KeepOpen is set
> >     and the object is taken from an already stored one.
> >   - Flush will call finish on open statement handles to avoid 
> > statement
> >     handles that stay open to long.
> >   - Add new parameter !DoOnConnect, which lets you specify 
> > any SQL statement
> >     that should be execute after each connect.
> >   - PrevNextForm could now take a hash ref as parameter and
> >     addtionaly generate first, last and goto buttons
> >   - Documentation updates.
> >   - Added patch from Klaus Reger to avoid warning about 
> > undefined value
> >     in DESTROY.
> >   - Added more datatypes to quote for Pg and Oracle. Patch 
> > from Klaus Reger.
> >   - Undef values in where expression are transfored to "is 
> > null" operators,
> >     also when using placeholders.
> >   - DBIx::Recordset now uses always bind_param, to avoid 
> problems with
> > quoting
> >     and to speed up things. This means DBD drivers which does 
> > not support
> >     placesholdes will not work anymore with DBIx::Recordset, but all
> >     DBD drivers I know, supports now placesholder, so there 
> > should be no
> > problem.
> >     This also remove an potetial insecure eval form the 
> > BuildWhere function.
> >   - DBIx::Recordset::Flush will update all dirty rows, also 
> > if some of them
> >     can't be written to the
> >     database. Patch from Alexander Smishlajev.
> >   - DBIx::Recordset::Row::Flush make sure that exactly one 
> > row is updated.
> > Based
> >     on a patch from Alexander Smishlajev.
> >   - By setting $FetchsizeWarn to zero, you can now make 
> > DBIx::Recordset
> > return
> >     the value of $sth -> rows, when the FETCHSIZE method is 
> > called by Perl.
> >     This feature is still experimental, because I don't what 
> > different DBMS
> >     returns in $sth -> rows, after an SELECT. Patch from Robert.
> >   - By setting $PreserveCase, you can cause DBIx::Recordset to _not_
> > translate all
> >     names to lowercase. Per default DBIx::Recordset 
> > translates all names
> > (tablenames/
> >     fieldnames) to lowercase to let application work with 
> > different DBMS.
> >   - Updated docs of DBIx::Compat.
> >   - If the DBMS supports it, DBIx::Recordset will use the 
> LIMIT/OFFSET
> > keywords if you
> >     only want to fetch a limited number of row from the 
> database (for
> > parameters
> >     $start and $max). Patch from Robert.
> >   - Added an indroduction to DBIx::Recordset (based on my 
> > talk on the 1999
> > Perl conference)
> >     which is viewable with perldoc Intrors.pod
> > 
> > 
> > 
> > -------------------------------------------------------------
> > Gerald Richter    ecos electronic communication services gmbh
> > Internetconnect * Webserver/-design/-datenbanken * Consulting
> > 
> > Post:       Tulpenstrasse 5         D-55276 Dienheim b. Mainz
> > E-Mail:     [EMAIL PROTECTED]         Voice:    +49 6133 925151
> > WWW:        http://www.ecos.de      Fax:      +49 6133 925152
> > -------------------------------------------------------------
> > 
> 

Reply via email to