Added support for connecting to Azure SQL Database using Azure Active Directory principal name and password.
Added support for handling the XML data type in the interfaces PreparedStatement, CallableStatement, and ResultSet.
Added new connection property 'enablePrepareOnFirstPreparedStatementCall' to manage prepared statements calls.
Compatibility with Java 12.
Compatibility with Zulu OpenJDK.
Improved class JSQLDatabaseMetaData.
8.3.1
FIX: Issue with truncation data for types VARCHAR(MAX), NVARCHAR(MAX).
8.3
Added support for JDBC 4.3.
Compatibility with Java 9, Java 10 and Java 11.
Compatibility with OpenJDK.
Compatibility with AdoptOpenJDK.
Added support for Connection.beginRequest/Connection.endRequest methods are going
from JDBC 4.3.
Added new connection property 'maxSizePreparedStatementsPool' to manage opened handles for prepared
statements.
FIX: Issue with closing a ResultSet object when a Statement or
Connection object that produced the ResultSet is closed.
8.2
Compatibility with SQL Server 2017
Added support for Always Encrypted SQL Server feature.
Added feature for loading data from a CSV file. See JSQLBulkLoad class.
Added support for DATETIMEOFFSET type.
Added support for JAVA 8 datetime API types.
Added support the Java logging API.
Added collation support.
Added new connection property 'useDateTime2' for sending parameter values as DATETIME or DATETIME2 type.
Improved performance with reading, writing and updating LOBs data.
FIX: Returns incorrect SQLSTATE codes.
FIX: Issue with clustered index.
FIX: Exception in CachedRowSet class.
FIX: Issue with manifest file.
FIX: Issue with buffer size over 2Gb.
8.1
Added support for JDBC 4.2
Compatibility with SQL Server 2016
Implemented connection to the host with multiple IPs
Implemented conversion data types for bulk loading
Added support for NTLMv2 authentication (see 'useNTLMv2' connection property)
Added new connection property for Time conversion to DateTime (see 'useTimeAsSQLDateTime')
Changed behaviour with Date and Time. Now PreparedStatement.setDate,
ResultSet.getDate truncates time value and
PreparedStatement.setTime, ResultSet.getTime truncates date value.
FIX: bug with Transaction descriptor
FIX: bug with SQL Server routing
FIX: issue in DatabaseMetaData.getSchemas()
FIX: error in DatabaseMetaData for SQL Server 2000
FIX: bug with datetime2 in PreparedStatement
FIX: error in DatabaseMetaData.getColumns
FIX: issue with bulk loading when using temporary table
FIX: callable statement with long data
FIX: geometry type with long data
FIX: issue with time values
FIX: bug with throwing SQLException
FIX: bug while processing column metadata
FIX: bug in getPropertyInfo
FIX: bug in PreparedStatement.execute()
FIX: bug in Statement.executeBatch() for DATETIME and SMALLDATETIME
FIX: issue with Decimal and Numeric types in bulk loading
FIX: bug in PreparedStatement.setBlob
FIX: bug for VARCHAR, NVARCHAR and VARBINARY in bulk loading
FIX: connection pool issue
FIX: Packet Size cannot be bigger then 8000
FIX: BulkLoad is not working with not writable columns
FIX: Failed connection to named instance if enable failover.
FIX: Methods in ResultSetMetaData returns not correct values.
8.0
Implemented image type support for Bulk Loading
Implemented NTLM authentication with SSL enabled
Kerberos authentication support
Full SQLXML type support
Support of hierarchyid/geography/geometry type
TDS 7.4 features - Sparse column set, Trace activity logging
FIX: javax.* classes were removed from jar
FIX: setTransactionIsolation() changes the isolation level starting with the next transaction
henceforth
FIX: escape syntax for nativeSQL()
FIX: from now on JSQLStatemenet.getRowsetField() returns byte[] for image
NOTE: JSQLNTAuthentication.dll is not required anymore
7.3
Implemented datetime2, sql_variant types support.
Implemented bulkMaxSize URL parameter.
Implemented date, time, datetime2, text, ntext types support for Bulk Loading.
FIX: Bug with comments in prepared statements.
FIX: Bulk load doesn't support square brackets in column names.
FIX: It's impossible to disable some debugging messages in logs, e.g. "----- PKT_INSTANCE_INFO
-----".
NOTE: Internal performance improvement. Improved switch in JSQLStatement.sendRowData()
7.2
Implemented Bulk Loading Feature
Implemented ResultSet.getDate() and ResultSet.getTime() support
FIX: A bug with sequent IN and OUT parameter with different types
FIX: Incomatibility with JDBC 4.1: DatabaseMetaData.getColumns()
NOTE: Internal structure changes to decrease trafic
7.1
Implemented JSQLConnect support for JDBC 4.1
Improved conection process to achieve SQL Azure compatibility
FIX: Fixed "Timeout error [OleDB Status:80004005]" during Windows Authentication with concurent
multi-processes
FIX: Now JSQLConnect throws exception in case of wrong URL params values
FIX: Fixed several incompatibilities with JDBC 4.0
7.0
Implemented ReadOnly Intent support (SQL Server 2012 feature, TDS 7.4)
Implemented Routing support (SQL Server 2012 feature, TDS 7.4)
Returned ability to disable/enable connection verification table.
FIX: connection.getMetaData().getURL() returns null URL when connection is created with help of
DataSource
FIX: call of stored procedure may crash if procedure has BIGINT OUTPUT parameter
6.04
Added TRANSACTION ISOLATION LEVEL SNAPSHOT support into JDBC 4.0 version of the driver
FIX: JDBC 3.0 driver throws exception when JSQLXADataSource.getXAConnection() method is called
6.00
Prepared the driver for the new features (PDW, etc.) in SQL Server 2008 R2
5.99
Plenty of performance optimization
Improved Windows Authentication Trace logging
All kinds of Timeout performace optimization
Plenty of performance optimizations
Cleaned code
FIX: Random object setting(SetObject) can cause changing the object data
FIX: Big data in column (more than 8000 symbols) can be random truncated when inserting data
FIX: Added workaround for "SP_PREPARE Crashes when attempting to use Fulltext Indexes on SQL 2008"
FIX: not null lockTimeout can hug the driver
FIX: driver thrown an exception when packetsize param in connection string was equal 0
FIX: Windows Authentication can crash on Windws Vista system when Windows Authentication Trace
logging
is on
FIX: Windows Authentication can hang up on Windws Vista system
FIX: The driver ignores named parameters in CallableStatement
FIX: Driver ignored "PreparedStatement.RETURN_GENERATED_KEYS" option when Statement called execute()
method
5.80
Requires Java5 (1.5) or higher
Removed JDBC2.0 files and support
Improved Windows Authentication Trace logging
New IPv6 address support
Initial Support for SQL 2008
New packetSize Connection Option with default 8000
Removed redundant variables in PreparedStatement
NOTE:Driver will cast BigDecimal values with toPlainString in buffer before sending allowing
BigDecimal("String") to be used with scientific notation without requiring toPlainString in the
application
NOTE: setObject, updateObject, setBigDecimal, updateBigDecimal with value BigDecimal.toString using
string
exponent "E+/-" may cause SQL Message "Error converting data type nvarchar to numeric", use
BigDecimal.toPlainString
NOTE: setObject, updateObject with bigDecimal.toString using "E+/-" notation against numeric columns
will
cause SQL Message "Error converting data type nvarchar to numeric", use BigDecimal.toPlainString
FIX: Cursor fetch for SQL2005 returning only 1 Row
FIX: intermittent Timeout error [OleDB Status:80004005] with Windows Authentication
FIX: DataTypes.java description for VARCHAR
FIX: maxDecimalPrecision for Types.Decimal when building Parameter Definitions
FIX: PacketSize higher then 4096 can cause DBComms Exception on Streaming Methods
5.70
NOTE: setBinaryInputStream Size Problem is due to TDS Limit in SQL Server. No workaround at this
time.
NOTE: Several internal structure change to align methods and classes more closely with future
enhancments.
FIX: Setter and Getter methods for Date/Time/Timestamp causing incorrect values in 5.60.
5.60
NOTE: JSQLConnect for JDBC 2.0 is Deprecated.
FIX: ResultSet insert/update was passing nulls for non-String data values
CHANGE: Added a local thread in JSQLPoolingDataSource to handle the PoolingEngine definitions
FIX/CHANGE: New PreparedStatment logic to correct parameter length and value length conflicts
BUG: Network Packet Sizes beyond 4096 can cause DBComms Exception for streaming methods
BUG: setBinaryInputStream throws DBComms Exception for streams larger then 260MB
BUG: ssl=auto for non-SSL SQL2005 instance causes socket exception.
FIX: DST GMT crossover timestamp fix, removed change from 3.2714
5.56
FIX: LONGVARCHAR with CallableStatment can cause Exception "Procedure or Function 'StoredProc'
expects
parameter '@Param' , which was not supplied."
FIX: SSL Connections can cause "java.io.IOException: SSL input stream bad TDS packet type: 18"
5.551
FIX: codepage property was not working since 5.5 (5.50)
NOTE: TSR473 -- Not Bug, TDS RPC Limit is 2100 parameters per single prepared statement
5.55
CHANGE: selectMethod=cursor now creates Server Side Cursor for PreparedStatements that do not
specify
thier
own Result Type and Concurrency and contains a SELECT only
FIX: incorrect binding of Null CLOBs
FIX: Invalid column name 'rowstat' from Server Side Cursors and ResultSetMetaData
FIX: Statement.wasNull() fails for INT output parameter.
FIX: MultiThreading Single Connection causes No Data Exception with AutoCommit False
NOTE: OutOfMemory causes Temp File of ResultSet Memory on Win32 Sun JVM
BUG: TSR473 -- 2100 or more parameters in single PreparedStatement cause Exception "This statement
did
not
return a result set"
5.54
FIX: TrustedAuthentication Library fix for handling of CoInitialize errors.
CHANGE: TrustedAuthentication Library is now synchronized completely. Only a single Thread, Process,
or
VM
can access the library at a time.
FIX: getDriverName DatabaseMetaData contained incorrect JSQLConnect Version numbers
5.532
FIX: PreparedStatement setShort now correctly sets SMALLINT MSSQL Parameter instead of INT
5.531
FIX: getTablePrivileges with SQL2005 no longer throws exception
5.53
FIX: getColumnCount with SQL2005 no longer provides incorrect result
CHANGE: JSQLPoolingEngine now uses a round robin routine for getConnection requests
5.52
Fix incorrect handle parsing for MSSQL prepared statement handles greather than 65535
5.51
Corrected IF TRAN syntax error on complex batch transaction checks
5.50
Versions of JSQLConnect to support JDBC 4.0 (draft), JDBC 3.0 and JDBC 2.0
Support for the new XML JDBC data type in JDBC 4.0. DOM, SAX, Stax bindings etc.(JDBC 4.0)
Direct instantiation of BLOB/CLOB objects from a JDBC connection (JDBC 4.0)
Java Standard Edition Service Provider mechanism (JDBC 4.0)
Statement Pooling controls (JDBC 4.0)
Corrected issue relating to inability to execute batch statements when a connection pool is full
5.02
The Websphere data helper now does not set the database default isolation. IBM recommends that users
should
now set the default isolation level for a Websphere datasource via the Websphere console.
5.01
Correction of data truncation issues when binding LOB data to columns that were previously bound
with
non
LOB (e.g. string data)
5.0
Connectivity to SQL Server 2005.
NTLM authentication option.
SSL authenticated/encrypted connections option.
Customized Webshpere 5.0/6.0 datasource adapter. Specify
com.jnetdirect.jsql.WebsphereDataStoreHelper in
WAS
console admininstrator.
4.55
Allow literal procedure call syntax '{call..' in statement syntax that is not a procedure call
operation.
4.54
Detection of a SQL Server 2005 connection.4.53
JSQLNTAuthentication.dll issues a unique authentication proxy listening port for the driver in each
JVM
instance.
4.52
Changed parameter names when calling sp_special_columns, sp_table_privileges using SQL Server 2005
for
database meta data
The JSQLNTAuthentication.dll issues a unique authentication proxy listening port for the driver in
each
JVM
instance. This is required since there is no inter-JVM synchronization.
4.51
Provide ability to return prepared statement meta data prior to the execution of the statement
Driver must use max precision of 38 for all decimals for SQL 2000, previously was set at precision
of 28
prepStmt.setObject(type) added additional code to convert data to target type before sending to db
A db datetime returned as a JDBC time now has the date component zeroed
A callable statement param used for IN and OUT may have a different type registered for output
versus
the
input data type supplied by a setXXX().
DATETIME output params from a stored proc must be converted to the user's registered out type Prep
statements sp_prepare datatype
NTEXT must be modified to TEXT when using ascii string parameters property
IOBuffer.bufferAppendRPCStringAscii caused an IndexArrayOutOfBounds exception periodically with
batched
callable statements
For logging of RPC data convert the binary data to hex representation
4.51
Added case for error code to state mapping. Error 2627 maps to SQL 92 state "23000" (Violation of
primary key constraint)
4.50
Product is now J2EE 1.4 Certified.
4.04
Code changed in AuthenticationProcessor run() method and the JDBC3.0 driver will use the methods
available in JDK 1.4 and up for reusing the ServerSockets that were closed recently.
Reusing recently closed sockets by the authentication proxy avoids depletion of the socket pool.
Added case for error code to state mapping. Error 2627 maps to SQL 92 state "23000" (Violation of
primary key constraint)
RetryConnectionCount > 0 caused >1 connection to be created in error. Now when a connection is
made successfully the retry loop exits.
A connection thread is now guaranteed to not start a new trusted connection proxy listener before
Reusing recently closed sockets by the authentication proxy avoids depletion of the socket pool the
proxy instance thread of a previous connection exits
New property trustedAuthenticationPort was added to enable the trusted authentication proxy to
listen on
a unique port for every JVM instance on a single machine. Otherwise the proxy listener is not multi
process safe on >1 JVM on a single machine dsadas
4.0300 Release
Fixed CASE in DatabaseMetaData.getCatalogs().Now returns original case.
4.0200 Release
Fixed a bug in SET statements.
Fixed a bug in executeBatch.
4.0100 Release
New property "iterativeBatching" added to support JSQLConnect 3.0 and 2.0 compatibility.
4.0000 Release
New property "preExecuteMetaData" added to support the availability of meta data prior to statement
execution.
New property "selectMethod" added to support cursors.
Full Blob and Clob Support.
Complete 64-bit support. Includes DLL's for NT Authentication and Distributed Transactions.