The following new features are in Universal Data Access Suite version 5.2:
Database agents support the latest releases of all supported database engines, including:
Note that there are now two Multi-Tier Generic Client ODBC Drivers:
Both of these ODBC clients can be used with Unicode-enabled Database Agents.
The Request Broker can now be configured to Broadcast
Our Drivers are now built to communicate directly with Microsoft SQL Server and SYBASE ASE and ASA using TDS, the native wire protocol for these database servers. This now means that no additional software is required for our ODBC Drivers to communicate with these Databases. The switch to using TDS has also enabled us to double the performance of all our Drivers for these databases, relative to the older drivers based on the CT-Lib and DB-Lib libraries.
All drivers now support the SQLSetStmtAttr(SQL_ARRAY_SIZE) call for batch select statements, providing improved performance when re-execute select statements with bound parameters.
The Release 4 driver family brings marked communications layer improvements. Central to these are improved implementation of the SQLGetData() and SQLPutData() ODBC function calls.
In previous releases of the drivers, parameter data at query execution was assembled in our driver's client component and transferred to its server component as a single package. (The client and server components apply to both the Single- and Multi-Tier drivers; they refer to different layers within the driver entity.) Similarly, when fetching from a "long" or large binary data column, data was transferred from the driver's server component to the client component in a single package. The only way data could be manipulated in a piecemeal fashion, was within the ODBC application from the driver's client component (client side only).
The Release 4 driver family now allow transferring parameter data in parts over the network between the client and server driver components. Once transferred, the fragmented column data are re-pieced together in their entirety within the client and server portions of the driver.
When fetching, data from columns with "long" data are only transferred between the server and client components if one of the following applies to that column:
This mechanism is referred to as deferred fetching. In this method, as "long" column data is not reassembled within the ODBC Generic Client itself (rather, within the application), driver memory overhead incurred is dramatically reduced. Deferred fetching applies to the following "long" database column types:
If a table contains a column defined as one of these "long" types, but the actual data stored in the column only fills a small proportion of the available space, deferred fetching is of no benefit. In such cases, performance may be improved by switching off the deferred fetching mechanism using the control in the Generic Client DSN Setup dialog.