Fixed bug with UpdatableResultSets not
using client-side prepared statements.
Fixed character encoding issues when converting bytes to ASCII when MySQL doesn't provide the character set, and the JVM is set to a multi-byte encoding (usually affecting retrieval of numeric values).
Unpack 「unknown」 data types from server
prepared statements as Strings.
Implemented long data (Blobs, Clobs, InputStreams, Readers) for server prepared statements.
Implemented Statement.getWarnings() for
MySQL-4.1 and newer (using SHOW
WARNINGS).
Default result set type changed to
TYPE_FORWARD_ONLY (JDBC compliance).
Centralized setting of result set type and concurrency.
Refactored how connection properties are set and exposed as
DriverPropertyInfo as well as
Connection and
DataSource properties.
Support for NIO. Use useNIO=true on
platforms that support NIO.
Support for transaction savepoints (MySQL >= 4.0.14 or 4.1.1).
Support for mysql_change_user(). See the
changeUser() method in
com.mysql.jdbc.Connection.
Reduced number of methods called in average query to be more efficient.
Prepared Statements will be re-prepared
on auto-reconnect. Any errors encountered are postponed
until first attempt to re-execute the re-prepared statement.
Ensure that warnings are cleared before executing queries on prepared statements, as-per JDBC spec (now that we support warnings).
Support 「old」 profileSql
capitalization in ConnectionProperties.
This property is deprecated, you should use
profileSQL if possible.
Optimized Buffer.readLenByteArray() to
return shared empty byte array when length is 0.
Allow contents of
PreparedStatement.setBlob() to be
retained between calls to .execute*().
Deal with 0-length tokens in
EscapeProcessor (caused by callable
statement escape syntax).
Check for closed connection on delete/update/insert row
operations in UpdatableResultSet.
Fix support for table aliases when checking for all primary
keys in UpdatableResultSet.
Removed useFastDates connection property.
Correctly initialize datasource properties from JNDI Refs, including explicitly specified URLs.
DatabaseMetaData now reports
supportsStoredProcedures() for MySQL
versions >= 5.0.0
Fixed stack overflow in
Connection.prepareCall() (bad merge).
Fixed IllegalAccessError to
Calendar.getTimeInMillis() in
DateTimeValue (for JDK < 1.4).
DatabaseMetaData.getColumns() is not
returning correct column ordinal info for
non-'%' column name patterns. (Bug#1673)
Merged fix of datatype mapping from MySQL type
FLOAT to
java.sql.Types.REAL from 3.0 branch.
Detect collation of column for
RSMD.isCaseSensitive().
Fixed sending of queries larger than 16M.
Added named and indexed input/output parameter support to
CallableStatement. MySQL-5.0.x or newer.
Fixed NullPointerException in
ServerPreparedStatement.setTimestamp(),
as well as year and month descrepencies in
ServerPreparedStatement.setTimestamp(),
setDate().
Added ability to have multiple database/JVM targets for
compliance and regression/unit tests in
build.xml.
Fixed NPE and year/month bad conversions when accessing some
datetime functionality in
ServerPreparedStatements and their
resultant result sets.
Display where/why a connection was implicitly closed (to aid debugging).
CommunicationsException implemented, that
tries to determine why communications was lost with a
server, and displays possible reasons when
.getMessage() is called.
NULL values for numeric types in binary
encoded result sets causing
NullPointerExceptions. (Bug#2359)
Implemented Connection.prepareCall(), and
DatabaseMetaData.
getProcedures() and
getProcedureColumns().
Reset long binary parameters in
ServerPreparedStatement when
clearParameters() is called, by sending
COM_RESET_STMT to the server.
Merged prepared statement caching, and
.getMetaData() support from 3.0 branch.
Fixed off-by-1900 error in some cases for years in
TimeUtil.fastDate/TimeCreate()
when unpacking results from server-side prepared statements.
Fixed charset conversion issue in
getTables(). (Bug#2502)
Implemented multiple result sets returned from a statement or stored procedure.
Server-side prepared statements were not returning datatype
YEAR correctly. (Bug#2606)
Enabled streaming of result sets from server-side prepared statements.
Class-cast exception when using scrolling result sets and server-side prepared statements. (Bug#2623)
Merged unbuffered input code from 3.0.
Fixed ConnectionProperties that weren't
properly exposed via accessors, cleaned up
ConnectionProperties code.
NULL fields were not being encoded
correctly in all cases in server-side prepared statements.
(Bug#2671)
Fixed rare buffer underflow when writing numbers into buffers for sending prepared statement execution requests.
Use DocBook version of docs for shipped versions of drivers.
