DBD::ASAny -- an Adaptive Server Anywhere interface for Perl 5.

   Portions Copyright (c) 1994,1995,1996            Tim Bunce
   Portions Copyright (c) 1996,1998,1999,2000,2003  Sybase Inc.

   For license information, please see license.txt included in this
   distribution.

*BEFORE* BUILDING, TESTING AND INSTALLING this you will need to:

    Build, test and install Perl 5 (at least 5.6.0 is recommended).
    It is very important to test it and install it!

    Build, test and install the DBI module (at least DBI 1.34 is recommended).
    It is very important to test it and install it!

    Remember to *read* the DBI README file!


Building:
    On UNIX:
	[ Solaris, AIX, HP-UX, Linux ]

	perl Makefile.PL
	make
	make test
	make install
    
    On Win32:
	[ requires Microsoft C and ActiveState's ActivePerl
	  (www.activestate.com) ]

	NOTE: ActivePerl 5.6.0 build 616 or later is required.

	perl Makefile.PL
	nmake
	nmake test
	nmake install
    

    Do NOT hand edit the generated Makefile unless you are completely sure
    you understand the implications! Always try to make changes via the
    Makefile.PL command line and/or editing the Makefile.PL.


Notes:

1.  ASA connection parameters can be passed to DBD::ASAny by placing
    the list of parameters after 'DBI:ASAny:' in the first parameter
    to connect(). The connection parameters are specified as a list of
    LABEL=value pairs that are delimited by semicolons.

    If you are not familiar with ASA connection parameters, *please*
    refer to the ASA documentation.

    Example:

	$dbh = DBI->connect( 'DBI:ASAny:ENG=asademo;UID=dba;PWD=sql', '', '' );
    
    If the second parameter is nonblank, it is assumed to be a user
    name and UID=parameter2 will be appended to the ASA connection
    string.

    Similarly, if the third parameter is nonblank, it is assumed to be
    a password and PWD=parameter3 will be appended to the ASA
    connection string.

    The following is equivalent to the example above:

	$dbh = DBI->connect( 'DBI:ASAny:ENG=asademo', 'dba', 'sql' );
    

2.  Before running 'make test', a copy of the asademo.db file located
    in the ASA directory should be in your current directory. There
    have been problems autostarting and autostopping engines in rapid
    succession on UNIX with old versions of ASA. If you encounter a
    problem autostarting the engine, start the engine on
    asademo.db. Make sure the server & database names are both
    'asademo'. Icons installed with recent ASA versions for Windows
    start the demo database under a different name (such as
    'asademo9') -- do not use these icons to start the database.

3.  The ASAny DBD driver is thread-safe when using Perl ithreads.

4.  Prepared statements are not dropped from the ASA server until the
    statement handle is destroyed in the perl script. Calling finish()
    is not sufficient to drop the handle that the server is holding
    onto -- use "undef" instead or reuse the same perl variable for
    another handle. To help detect handle leaks in client
    applications, ASA by default limits the number of prepared
    statements and cursors that any connection can hold at one time to
    50 of each. If that limit is exceeded, a "Resource governor
    ... exceeded" error is reported. If you encounter this error, make
    sure you are dropping all of your statement handles and, if so,
    consult the ASA documentation for the MAX_CURSOR_COUNT and
    MAX_STATEMENT_COUNT options. Be careful when using
    prepare_cached() since the cache will hold onto statement handles.

---------------------------------------------------------------

There are two examples in the 'eg' directory.
connect.pl  -> Demonstrates a simple connect.
retrieve.pl -> Demonstrates retrieving data from a table and displaying the result set.
blobs.pl    -> Demonstrates the use of blobs

For further examples, consult the test scripts located in the 't' directory.

