columns.
We simply add a flag that indicates if we've seen any long columns and will
continue to bind the columns the slow way.
While we're at it, increase the maximum length of the column names that we can
handle.
We need to guess at parameter sizing in some cases (eg: MS Access) as the
SQLDescribeParam() API is an optional feature.
Tidy up error handling.
Add workaround for a shutdown bug that I see with MS ODBC implementation.
(working to determine the precise cause of this).
PDO core test suite now passes all tests.
Note that ODBCRouter doesn't directly implement ODBC 3.0, so
using it here won't really work.
Expand the ODBC 3 check to better explain what happened and
how to make progress (e.g.: use an ODBC manager library like
unixODBC).
The default (which should be safe) is to use the cursor library if it is needed.
If for some reason either the driver or the emulation is broken, you may
override this from your script.
Theoretically better than PHP persistent connections, since ODBC itself takes
care of resetting the connections back to a "ground" state.
Connection pooling defaults to ON, since this is generally useful.
You can turn it off by using:
pdo_odbc.connection_pooling=off
in your php.ini file.
You may configure how ODBC matches connection details to existing connections
by setting this value to "strict" (the default) or "relaxed". You are
encouraged to read the ODBC specs before changing this value.