DBD::Unify --  an Unify interface for Perl 5 using DBI.

This is the Database Driver for the Unify family of database products.

It has been ported and tested on DataServer 6.3AB, but this does not
mean it might not work on U2000 databases.

It uses DBI 1.14 and perl5.00503, but will probably work with DBI 0.93
or higher and perl 5.004 or higher.

   Copyright (c) 1999,2000  H.Merijn Brand <h.m.brand@hccnet.nl>

   You may distribute under the terms of either the GNU General Public
   License or the Artistic License, as specified in the Perl README file.

See the ChangeLog file for a complete history

This is a very basic port for Unify. At the moment of writing, this DBD
does not support all DBI elements, methods and attributes. (See RESTRICTIONS)

DATE, TIME, TEXT and BINARY fields are not (yet) supported, though it is
easy to change (code is supplied, but returns undef). Since we do not use
these types with our databases, it's up to you to supply patches.

BUILDING, TESTING AND INSTALLING:

    This will only work if DBI is installed on a recent version of perl ;-)

	   # perl Makefile.PL
	   # make test
	   # make install

    Make test will use the current database and create a table "xx". If
    the test fails, table xx might still exist. If it already exists,
    it might get lost, so be aware!

    I've encountered some problems using <varargs.h> on builds where perl
    decided to use <stdarg.h>, so I try to switch to varargs by force. If
    problems persist, maybe rewriting dbg () to:

	   static void dbg (level, fmt, ap)
	   int  level;
	   char *fmt;
	   char *ap;
	   {
	       auto	va_list	args;

	       if (level > dbis->debug && level > opt_v)
		   return;

	       va_start (args, ap);
	       (void)vfprintf (DBILOGFP, fmt, args);
	       (void)fflush   (DBILOGFP);
	       va_end (args);
	       } /* dbg */

    might help for those deficit systems.
    
    As with all modules: Patches are welcome.

RESTRICTIONS:

    # Incomplete or out-of-date documentation, though I keep trying to
      keep in pace with what I change

    # Missing support for datatypes DATE, TIME, TEXT and BINARY in fetch
      and positional parameters

    # Some database attributes not (yet) implemented. (AutoCommit et all)

    # Statement attributes not (yet) fully implemented. Those needed for
      $sth->fetchrow_hashref () now work, but STORE_attrib () doesn't.
      Someone (probably me) will have to work through the list of
      documented database- and statement handle attributes

    # Unify only distributes static libraries, so the module might
      become rather big

TO DO:

    # Remove as many restrictions as possible ;-)

    # Add more tests

    # Implement all implementable handle attributes (->{CursorName} is
      probably the easiest to start with ;-)

    # Investigate and implement 3-arg versions of $sth->bind_param ()

    # Investigate and implement 2- and 3-arg version of $dbh->do ()

    # Investigate if looks_as_number () should be used in st_bind ().
      Comments are in where it should.

    # Investigate if LIKE and SHLIKE operators in positional parameters
      indeed do not work (I've seen that, but found no time yet to look
      into this more). Currently it cores on SHLIKE.

    # Try finding a way to open several different Unify databases at the
      same time for parallel processing.
