📄 changes
字号:
# Changelog
# $Id: CHANGES,v 1.7 2002/05/17 19:10:28 mark_matthews Exp $
08-08-02 - MM.MySQL is now MySQL Connector/J
05-16-02 - Version 2.0.14
- More code cleanup
- PreparedStatement now releases resources on .close() (SF bug 553268)
- Quoted identifiers not used if server version does not support them. Also,
if server started with --ansi or --sql-mode=ANSI_QUOTES then '"' will be
used as an identifier quote, otherwise '`' will be used.
- ResultSet.getDouble() now uses code built into JDK to be more precise (but slower)
- LogicalHandle.isClosed() calls through to physical connection
- Added SQL profiling (to STDERR). Set "profileSql=true" in your JDBC url.
See README for more information.
- Fixed typo for relaxAutoCommit parameter.
04-24-02 - Version 2.0.13
- More code cleanup.
- Fixed unicode chars being read incorrectly (SF bug 541088)
- Faster blob escaping for PrepStmt code contributed by
Pertti Roos (Thanks!)
- Added set/getPortNumber() to DataSource(s) (SF bug 548167)
- Added setURL() to MySQLXADataSource (SF bug 546019)
- PreparedStatement.toString() fixed (SF bug 534026)
- ResultSetMetaData.getColumnClassName() now implemented
- Rudimentary version of Statement.getGeneratedKeys() from JDBC-3.0
now implemented (you need to be using JDK-1.4 for this to work, I
believe)
- DBMetaData.getIndexInfo() - bad PAGES fixed (SF BUG 542201)
04-07-02 - Version 2.0.12
- General code cleanup.
- Added getIdleFor() method to Connection and
MysqlLogicalHandle.
- Relaxed synchronization in all classes, should fix 520615 and 520393.
- Added getTable/ColumnPrivileges() to DBMD (fixes 484502).
- Added new types to getTypeInfo(), fixed existing types thanks to
Al Davis and Kid Kalanon.
- Added support for BIT types (51870) to PreparedStatement.
- Fixed getRow() bug (527165) in ResultSet
- Fixes for ResultSet updatability in PreparedStatement.
- Fixed timezone off by 1-hour bug in PreparedStatement (538286, 528785).
- ResultSet: Fixed updatability (values being set to null
if not updated).
- DataSources - fixed setUrl bug (511614, 525565),
wrong datasource class name (532816, 528767)
- Added identifier quoting to all DatabaseMetaData methods
that need them (should fix 518108)
- Added support for YEAR type (533556)
- ResultSet.insertRow() should now detect auto_increment fields
in most cases and use that value in the new row. This detection
will not work in multi-valued keys, however, due to the fact that
the MySQL protocol does not return this information.
- ResultSet.refreshRow() implemented.
- Fixed testsuite.Traversal afterLast() bug, thanks to Igor Lastric.
01-27-02 - Version 2.0.11
- Fixed missing DELETE_RULE value in
DBMD.getImported/ExportedKeys() and getCrossReference().
- Full synchronization of Statement.java.
- More changes to fix "Unexpected end of input stream"
errors when reading BLOBs. This should be the last fix.
01-24-02 - Version 2.0.10
- Fixed spurious "Unexpected end of input stream" errors in
MysqlIO (bug 507456).
- Fixed null-pointer-exceptions when using
MysqlConnectionPoolDataSource with Websphere 4 (bug 505839).
01-13-02 - Version 2.0.9
- Ant build was corrupting included jar files, fixed
(bug 487669).
- Fixed extra memory allocation in MysqlIO.readPacket()
(bug 488663).
- Implementation of DatabaseMetaData.getExported/ImportedKeys() and
getCrossReference().
- Full synchronization on methods modifying instance and class-shared
references, driver should be entirely thread-safe now (please
let me know if you have problems)
- DataSource implementations moved to org.gjt.mm.mysql.jdbc2.optional
package, and (initial) implementations of PooledConnectionDataSource
and XADataSource are in place (thanks to Todd Wolff for the
implementation and testing of PooledConnectionDataSource with
IBM WebSphere 4).
- Added detection of network connection being closed when reading packets
(thanks to Todd Lizambri).
- Fixed quoting error with escape processor (bug 486265).
- Report batch update support through DatabaseMetaData (bug 495101).
- Fixed off-by-one-hour error in PreparedStatement.setTimestamp()
(bug 491577).
- Removed concatenation support from driver (the '||' operator),
as older versions of VisualAge seem to be the only thing that
use it, and it conflicts with the logical '||' operator. You will
need to start mysqld with the "--ansi" flag to use the '||'
operator as concatenation (bug 491680)
- Fixed casting bug in PreparedStatement (bug 488663).
11-25-01 - Version 2.0.8
- Batch updates now supported (thanks to some inspiration
from Daniel Rall).
- XADataSource/ConnectionPoolDataSource code (experimental)
- PreparedStatement.setAnyNumericType() now handles positive
exponents correctly (adds "+" so MySQL can understand it).
- DatabaseMetaData.getPrimaryKeys() and getBestRowIdentifier()
are now more robust in identifying primary keys (matches
regardless of case or abbreviation/full spelling of Primary Key
in Key_type column).
10-24-01 - Version 2.0.7
- PreparedStatement.setCharacterStream() now implemented
- Fixed dangling socket problem when in high availability
(autoReconnect=true) mode, and finalizer for Connection will
close any dangling sockets on GC.
- Fixed ResultSetMetaData.getPrecision() returning one
less than actual on newer versions of MySQL.
- ResultSet.getBlob() now returns null if column value
was null.
- Character sets read from database if useUnicode=true
and characterEncoding is not set. (thanks to
Dmitry Vereshchagin)
- Initial transaction isolation level read from
database (if avaialable) (thanks to Dmitry Vereshchagin)
- Fixed DatabaseMetaData.supportsTransactions(), and
supportsTransactionIsolationLevel() and getTypeInfo()
SQL_DATETIME_SUB and SQL_DATA_TYPE fields not being
readable.
- Fixed PreparedStatement generating SQL that would end
up with syntax errors for some queries.
- Fixed ResultSet.isAfterLast() always returning false.
- Fixed timezone issue in PreparedStatement.setTimestamp()
(thanks to Erik Olofsson)
- Captialize type names when "captializeTypeNames=true"
is passed in URL or properties (for WebObjects, thanks
to Anjo Krank)
- Updatable result sets now correctly handle NULL
values in fields.
- PreparedStatement.setDouble() now uses full-precision
doubles (reverting a fix made earlier to truncate them).
- PreparedStatement.setBoolean() will use 1/0 for values
if your MySQL Version >= 3.21.23.
06-16-01 - Fixed PreparedStatement parameter checking
- Fixed case-sensitive column names in ResultSet.java
06-13-01 - Fixed ResultSet.getBlob() ArrayIndex out-of-bounds
- Fixed ResultSetMetaData.getColumnTypeName for TEXT/BLOB
- Fixed ArrayIndexOutOfBounds when sending large BLOB queries
(Max size packet was not being set)
- Added ISOLATION level support to Connection.setIsolationLevel()
- Fixed NPE on PreparedStatement.executeUpdate() when all columns
have not been set.
- Fixed data parsing of TIMESTAMPs with 2-digit years
- Added Byte to PreparedStatement.setObject()
- ResultSet.getBoolean() now recognizes '-1' as 'true'
- ResultSet has +/-Inf/inf support
- ResultSet.insertRow() works now, even if not all columns are
set (they will be set to "NULL")
- DataBaseMetaData.getCrossReference() no longer ArrayIndexOOB
- getObject() on ResultSet correctly does TINYINT->Byte and
SMALLINT->Short
12-03-00 - Implemented getBigDecimal() without scale component
for JDBC2.
- Fixed composite key problem with updateable result sets.
- Added detection of -/+INF for doubles.
- Faster ASCII string operations.
- Fixed incorrect detection of MAX_ALLOWED_PACKET, so sending
large blobs should work now.
- Fixed off-by-one error in java.sql.Blob implementation code.
- Added "ultraDevHack" URL parameter, set to "true" to allow
(broken) Macromedia UltraDev to use the driver.
04-06-00 - Fixed RSMD.isWritable() returning wrong value.
Thanks to Moritz Maass.
- Cleaned up exception handling when driver connects
- Columns that are of type TEXT now return as Strings
when you use getObject()
- DatabaseMetaData.getPrimaryKeys() now works correctly wrt
to key_seq. Thanks to Brian Slesinsky.
- No escape processing is done on PreparedStatements anymore
per JDBC spec.
- Fixed many JDBC-2.0 traversal, positioning bugs, especially
wrt to empty result sets. Thanks to Ron Smits, Nick Brook,
Cessar Garcia and Carlos Martinez.
- Fixed some issues with updatability support in ResultSet when
using multiple primary keys.
02-21-00 - Fixed Bad Handshake problem.
01-10-00 - Fixes to ResultSet for insertRow() - Thanks to
Cesar Garcia
- Fix to Driver to recognize JDBC-2.0 by loading a JDBC-2.0
class, instead of relying on JDK version numbers. Thanks
to John Baker.
- Fixed ResultSet to return correct row numbers.
- Statement.getUpdateCount() now returns rows matched,
instead of rows actually updated, which is more SQL-92
like.
10-29-99 - Statement/PreparedStatement.getMoreResults() bug fixed.
Thanks to Noel J. Bergman.
- Added Short as a type to PreparedStatement.setObject().
Thanks to Jeff Crowder
- Driver now automagically configures maximum/preferred packet
sizes by querying server.
- Autoreconnect code uses fast ping command if server supports
it.
- Fixed various bugs wrt. to packet sizing when reading from
the server and when alloc'ing to write to the server.
08-17-99 - Now compiles under JDK-1.2. The driver supports both JDK-1.1
and JDK-1.2 at the same time through a core set of classes.
The driver will load the appropriate interface classes at
runtime by figuring out which JVM version you are using.
- Fixes for result sets with all nulls in the first row.
(Pointed out by Tim Endres)
- Fixes to column numbers in SQLExceptions in ResultSet
(Thanks to Blas Rodriguez Somoza)
- The database no longer needs to specified to connect.
(Thanks to Christian Motschke)
07-04-99 - Better Documentation (in progress), in doc/mm.doc/book1.html
DBMD now allows null for a column name pattern (not in
spec), which it changes to '%'.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -