Changes in AnyDAC 2.0 for Delphi
This document lists the changes introduced by new versions of AnyDAC for Delphi.
New in the “Spring 2009” Release, Version 2.0.17 (Build .1267)
- added: AD-0339: SQLite: Add static linking of SQLite3 amalgamation
- added: SQLite: sqlite3_progress_handler support
- added: ADConnection: KeepConnection option
- added: MySQL: SSL connection support
- added: AD-0335: MSSQL 2008: TIME2 support
- added: AD-0328: ODBC, ASA: Add support for ODBC v 2 drivers.
- added: GUIx: added TADGUIxFormsAsyncExecuteDialog.ShowDelay and HideDelay properties
- added: TADGUIxFormsErrorDialog: StayOnTop property
- changed: SQLite, Stan: optimized Array DML speed for 20%
- changed: DatS: optimize streaming support to outperform the ADO. Now AnyDAC streaming is about 1.5 times faster on saving.
- changed: TADTransaction.IsActive renamed to Active
- changed: Phys: SYS and INFORMATION_SCHEMA are the osSystem scoped schemas
- changed: GUIx: using Consts.SOK / SCancel for dialog buttons
- changed: GUIx: OK button is not the default button of the error dialog
- changed: ADConnection: SetTransaction is now virtual
- changed: ADConnection: GetLastAutoGenValue reviewed, tested and few issues are fixed
- changed: ADMetaInfoQuery: ResourceOptions is now published
- fixed: SQLite: static linking installation fails
- fixed: ODBC: Error with ODBC v 2 driver and MonitorBy=Xxx
- fixed: GUIx: FormatOptions.MapRules editor was missing few data types
- fixed: DataSnap: fails to post updates to MSSQL 2005 VARCHAR(MAX)
- fixed: AD-0353: DatS / Phys: Fails to use GUID fields with AutoInc attribute
- fixed: AD-0352: Stan: Expression evaluator fails to handle GUID values
- fixed: AD-0351: Stan: XML storage may fail to save Boolean value
- fixed: AD-0350: SQLite: Fails to convert GUID values on non-Unicode Delphi
- fixed: ODBC: fails to recognize a driver kind and create correct metadata object
- fixed: ODBC: fails to fetch blob values using Oracle and Firebird ODBC drivers
- fixed: AD-0345: Access + ODBC / Driver-Version check raises AV
- fixed: MSAccess: the Access 2007 driver raises "integer overflow"
- fixed: MSSQL 2008: DATE data type support was broken
- fixed: ASA: fails to recover broken connection
- fixed: ASA: not all "disconnected" error are recognized as ekServerGone
- fixed: PgSQL: the UUID support was broken
- fixed: AD-0338: PgSQL: "DECLARE CURSOR can only be used in transaction blocks" with multiple TADTransaction's
- fixed: PgSQL: not always correct cursors management in transaction
- fixed: PgSQL & ADT: A number of fixes and improovements for PgSQL composite and general ADT data types handling
- fixed: AD-0342: Oracle: fails to open a query with CHAR(...) parameters
- fixed: AD-0334: DB2: Cannot properly detect Unicode columns
- fixed: IB/FB: invalid variable label in a trace output
- fixed: MySQL: fails to initialize embedded MySQL
- fixed: Phys: when connection was recovered with active transaction, then exception may be raised on connection closing
- fixed: Phys: AV is possible on canceling of the very fast queries
- fixed: DatS: fails to load stream saved with v 2.0.13 version with "Cannot read DatSRow object"
- fixed: DatS: fails to load a blob value from XML storage
- fixed: ADMemTable: fails to load a stream with an custom extra table added to dats manager
- fixed: ADQuery: AV is possible with ResourceOptions.ExecMode = amBlocking and ExecTimeout > 0
- fixed: ADQuery: AV is possible, when an exception is raised (Open / ExecSQL) and the query is destroyed before exc. object
- fixed: TADDataSet: impossible to post changes in OnBeforeClose
- fixed: AD-0333: ADDataSet: Refresh of detail dataset makes current a first record
- fixed: ADDataSet: fails to call NextRecordSet in AfterOpen in Async mode. And few other issues related to Async mode and multiple result sets.
- fixed: ADStoredProc: changing param data type (AsXxxx) before Prepare call may lead to a parameter value loss
- fixed: AD-0330: ADStoredProc: GetResults has no effect
- fixed: ADUpdateSQL: AV is possible on destruction
- fixed: AD-0329: ADUpdateSQL: AV at run time create / destroy
- fixed: ADTransaction: may fail to destroy a dataset linked to a transaction
- fixed: ADManager: TADManager.DriverDefFileName has no property editor.
- fixed: AD-0331: ADConnection: OnError event handler may lead to "ADManager shutdown timeout"
- fixed: AD-0349: ADParam: Assign(TParam) incorrectly assigns BLOB value
- fixed: AD-0334: ADScript: fails to execute script with the phrase ESCAPE '\'
- fixed: ADScript: ScriptOptions.CommitEachNCommands does not work properly
- fixed: ADScript: BYTES / VARBYTES column dumping was broken
- fixed: AD-0332: Stan: Mapping of dtByte to dtAnsiString / dtWideString fails
- fixed: GUIx: QBuilder fails to load saved query model
- fixed: ADExplorer: fails to work with some of connection definition settings
- fixed: ADExplorer: fails to show foreign key columns
- fixed: ADMonitor: the TADMonitor + MonitorBy=Remote leads to "interface is not supported"
- fixed: AD-0337: DataSnap: ORA-01036 on posting updates to Oracle DB
- fixed: AD-0336: DataSnap: "BCD Overflow" on Oracle "SELECT COUNT(*) from MyTab"
- fixed: FPC: few FPC / Linux incompatibilities
New in the “Winter 2009” Release, Version 2.0.15 (Build .1163)
- added: PgSQL: support for array and composite types
- added: Firebird: supported for trusted authentification
- added: MSAccess: support for INSERT INTO .. DEFAULT VALUES
- added: SQLite: support for PRAGMA = FOREIGN_KEYS
- added: AD-0315: GUIx: Add exception handling control to the TADGUIxFormsErrorDialog
- added: TADDataSet: Add Distinct property to TADIndex
- added: DatS: add versioning to the DatS streaming. Added TADResourceOptions.DefaultStoreVersion property.
- added: ADExplorer: added support for connection recovery
- added: FR4 addon: added D2010 package files, minor fix
- added: Demo: TADScript demos are added
- added: Help: TADScript is described
- changed: TADScript: multiple improvement and code cleanup
- changed: Phys: reconnection logic will be used for setting Connected to True
- changed: Phys: Ping method may be used when connection is not active
- changed: Phys: [IB|PG]ExtendedMetaData renamed to ExtendedMetaData. ExtendedMetaData is now False by default.
- changed: Stan: Options implementation is reworked to make it possible to implement profiles, etc. Also, now it is few ten % faster.
- changed: GUIx: "Advanced Options" captions are renamed into "Options". Few other similar changes.
- changed: ADDataSet: dataset constraint error message now is more informative
- changed: ADDataMove: in DS -> DS mode data move now will add to mapping only the same named fields
- changed: better diagnostic for "factory is not found" error
- changed: Tools: now is Unicode enabled
- fixed: DApt: AV when monitoring is enabled and SchemaAdapter is using
- fixed: AD-0324: PgSQL: 44000000 is fetched as 4400
- fixed: AD-0322: ADQuery: Does not post update for a field change 0.5 -> 0.05
- fixed: MySQL: stored procedure may fail to return data correctly
- fixed: Oracl: the support of inserting into a field with a sequence in a trigger was half broked
- fixed: MySQL: BIT(1) is mapping to dtByteString, instead of dtBoolean
- fixed: Oracl: does not support ftBoolean parameters
- fixed: GUIx: syntax memo does not correctly use the Delphi syntax highlighting schema
- fixed: AD-0321: ADDataSet: CopyDataSet may raise AV
- fixed: TADConnection: ExecSQL and ExecSQLScalar do not route an error to the OnError event
- fixed: AD-0320: ADDataSet: TField.OldValue, NewValue and CurValue does not work in TField.OnValidate
- fixed: AnyDAC may fail if to compile with different aligment, than {$A8}
- fixed: MySQL: stored procedure does not support BINARY / VARBINARY parameters
- fixed: AD-0319: ADQuery: Multiple issues with dataset editing, locking and transaction handling
- fixed: TADDataSet: "Out of bounds" if add a fkInternalCalc field after creating the normal fields
- fixed: AV in ADScript when connection is losted
- Oracle, MySQL, etc: fails to fetch date column with year < 1900
- Oracle: fails to fetch date column with year < 1900
- fixed: TDBX: fails to fetch resultset with ADT columns ("invalid attribute" on Oracle)
- fixed: ADScript: incorrect error message when command unit is not linked
- fixed: AD-0316: DatS: Constraint checking does not work on the long string columns
- fixed: Conn edit: incorrect links to the wiki
- fixed: ADScript: incorrect error message when command unit is not linked
- fixed: AD-0313: Design time: "TByteField class is not found" exception
- fixed: AD-0312: FB: Some procedures are not shown for StoredProcName
- fixed: Installer: fails to detect environment with "invalid data type for 'Xxxx'"
- fixed: AD-0286: Installer: Fails to install on D2010 Prof
- fixed: Installer: fails to compile with undefined AnyDAC_MONITOR
- fixed: D7: Internal error: E5916 on ADConnection.Connected := True
- fixed: AD-0285: TADDataSet: Post/Next statement leads to an infinite loop
- fixed: TADDataSet: assertion is failed if to call Cancel from BeforePost
- fixed: TADDataSet: GetNextPacket returns 0, while there were records fetched
- fixed: AD-0290: TADDataSet: FetchAll does not refresh the DB-controls
- fixed: AD-0294: ASA: AnyDAC fails to connect to ASA v 11
- fixed: MSAcc 2007: "Syntax error in INSERT INTO statement" with TEXT column
- fixed: ADS: few issues
- fixed: ADS: does not support SQL_C_NUMERIC
- fixed: AD-0307: Oracle: "Variable length data column [DUMMY] overflow" on connection transfered to DLL & UTF8
- fixed: IB: "Unavailable database" is not recognized as a losted connection
- fixed: AD-0288: IB: Setting IBAdvanced=set_db_readonly=0 does not work minor changes for DBX bridge driver
- fixed: AD-0305: PgSQL: CurrentSchema returns invalid data. So, metadata is not returned correctly too.
- fixed: AD-0296: PgSQL: "Cannot parse object name" is raised on a query with sub-queries
- fixed: AD-0295: MSSQL: Wrong TEXT value fetched from a resultset on D2009
- fixed: AD-0289: MSSQL: Fails to get metainformation, depending on server collation and other related
- fixed: AD-0283: MSSQL: Index Names select for MSSQL 2000 does not work (but works with MSSQL 2005)
- fixed: AD-0282: MSSQL: fails to apply RecsMax and RecsSkip to SELECT DISTINCT ORDER BY
- fixed: ODBC: AV on fetching mkTableFields with Parkway ODBC driver
- fixed: ODBC: Parkway Micro Focus ODBC driver fails to handle SQL_C_NUMERIC
- fixed: AD-0293: ODBC: AV when CATALOG_NAME_SEPARATOR is empty
- fixed: ODBC: AV on fetching using Parkway Micro Focus ODBC driver
- fixed: FPC / Linux: AV when a client library is not found
- fixed: FPC: fails to reprepare a query
- fixed: AD-0308: DataAbstract / Advantage: DAD does not recognise Advantage AUTOINC fields
- fixed: AD-0306: AV with SafeMM
- fixed: Stan: improved D2010 support in RegExp
- fixed: DatS: BLOB fields are reading as NULL's from XML storage
- fixed: TADParam.Create has wrong argument type
- fixed: ADScript: AV is possible at Destroy
- fixed: AD-0301: DApt: DELETE ... WHERE ID=:ID deletes not records
- fixed: ADMemTable: Seting TField.DefaultExpression does not work
- fixed: Tracer: an exception is created but not raised
- fixed: AD-0299: BDE: Migration of D5 TQuery to D2010 TADQuery fails
- fixed: AD-0297: ADQuery: does not raise an exception if a transaction is specified without a connection
- fixed: AD-0287: fails to call a SP with quoted name and a mixed identifier case
- fixed: AD-0291: GUIx: Connection editor: AV at calling the editor at design time
- fixed: GUIx: exception in dialog component constructors leads to an AV
- fixed: AD-0311: DAbs: AnyDAC DAD fails to compile with the trial AnyDAC version
- fixed: ODBC: Parkway Micro Focus ODBC driver fails to handle SQL_C_NUMERIC
- fixed: AD-0296: PgSQL: "Cannot parse object name" is raised on a query with sub-queries
- fixed: ODBC: AV on fetching using Parkway Micro Focus ODBC driver
- fixed: AD-0295: MSSQL: Wrong TEXT value fetched from a resultset on D2009
- fixed: AD-0294: ASA: AnyDAC fails to connect to ASA v 11
- fixed: AD-0293: ODBC: AV when CATALOG_NAME_SEPARATOR is empty
- fixed: FPC / Linux: AV when a client library is not found
- fixed: FPC: fails to reprepare a query
- fixed: D7: Internal error: E5916 on ADConnection.Connected := True
- fixed: AD-0291: Connection editor: AV at calling the editor at design time
- fixed: AD-0283: Index Names select for MSSQL 2000 does not work (but works with MSSQL 2005)
- fixed: fails to compile with undefined AnyDAC_MONITOR
- fixed: TADDataSet: assertion is failed if to call Cancel from BeforePost
- fixed: TADDataSet: GetNextPacket returns 0, while there were records fetched
- fixed: AD-0290: TADDataSet: FetchAll does not refresh the DB-controls
- fixed: AD-0289: MSSQL: Fails to get metainformation, depending on server collation and other related
- fixed: AD-0288: IB: Setting IBAdvanced=set_db_readonly=0 does not work
- fixed: AD-0287: fails to call a SP with quoted name and a mixed identifier case
- fixed: exception in dialog component constructors leads to an AV
- fixed: AD-0286: Fails to install on D2010 Prof
- fixed: AD-0285: Post/Next statement leads to an infinite loop
- fixed: AD-0282: MSSQL: fails to apply RecsMax and RecsSkip to SELECT DISTINCT ORDER BY
New in the “Fall 2009” Release, Version 2.0.13 (Build .1041)
(Status: September 10, 2009)
- added: D2010 support
- added: PgSQL: support for array data type
- added: AD-0278: Expressions: Support for F* and T* as False and True names
- added: AD-0271: PgSQL: Add support for UUID data type
- added: PgSQL: basic support for array data type (WIP)
- added: AD-0264: FB: Add automatic support for auto-generated columns
- added: AD-0263: FB: Add support for BOOLEAN domain columns
- added: AD-0206: FB: Add FB 2.5 features, including SQLState, isc_dpb_utf8_filename, fb_cancel_operation,SQL_NULL, new keywords and password changing
- added: AD-0258: Add XML data type support
- added: AD-0255: Add time interval data type support
- added: TADTable: Add GetCustomWhere and GetCustomOrderBy
- added: AD-0248: Phys: Add ability to specify current catalog / schema for connection
- added: AD-0023: Phys: Add LIMIT escape sequence and TADFetchOptions.RowsSkip option
- added: AD-0177: Provide origin table name as part of the TField.Origin property value
- added: ADO UDL Importer: Add GetRDBMSKind public method
- added: ADO UDL Importer: Add MapDataTypes property, allowing to disable data type mapping
- added: AD-0237: Implement ActiveStoredUsage inheritance
- added: Help: multiple topics added and updated
- changed: PgSQL: updated, improved, fixed support for basic data types
- changed: Help: updated few topics
- changed: AD-0008: Move all SQL generation to IADPhysCommandGenerator
- changed: Phys: unified many driver SQL generator code parts
- changed: Phys: unified many driver code parts and moved to the TADPhysCommand base class
- changed: TADDataSet: AssignField call is replaced with AssignFieldValue
- changed: TADDataSet: few methods moved from private to protected section for better compatibility with BDE
- changed: Northwind.Products.Discontinued made BOOLEAN in some of DB's
- changed: Oracle: improved trace output (added read attribute values)
- changed: Oracle: reduced number of ROW_COUNT readings
- changed: improved many error messages
- changed: ADQA: many tests are updated to the current product state
- changed: corrected alignment for CLI units
- changed: EADPhysArrayExecuteError renamed to EADDBArrayExecuteError and moved to uADStanError
- changed: removed SOUNDEX and DIFFERENCE escape and expression functions
- fixed: AD-0262: cxGrid: Inserting a new record using cxGrid is slow
- fixed: AD-0273: Single row Execute call does not fire OnError with EADPhysArrayExecuteError
- ffixed: AD-0261: AV on Delphi exiting, if to install custom components using AnyDAC
- ixed: AD-0281: TADTable: does not automatically fill detail fields from a master dataset
- fixed: AD-0280: Oracle: AV on opening "select cursor(select systimestamp from dual) as cur from dual"
- fixed: AD-0279: TADAdaptedDataSet: locks immediately in cached updates mode and deferred locking
- fixed: AD-0277: MSSQL: Fails to get PK fields on a server with Latin1_General_BIN default instance collation
- fixed: DApt: "Cannot perform action without SelectCommand" if the Lock command has failed and DBMS invalidates all commands in TX after that (PgSQL)
- fixed: TADQuery: AV is possible is uADDaptManager is not linked
- fixed: TADDataSet: AV on closing when "bad" TField.DefaultExpression and 2 assigned TADTransaction's
- fixed: DatS: incorrect "fixed length mismatch" error messagefixed: Help: few mistyped property names
- fixed: ADMonitor: cannot handle more than one client. May hang at exiting.
- fixed: reduced CPU utilization at idling
- fixed: AD-0269: AV with MSSQL if refresh called after network disconnect
- fixed: AD-0268: ADQuery: may hangup in async mode
- fixed: AD-0267: "Connection is not defined for [ADQuery1]" if binded by bbObject to a connection with ConnectionName specified
- fixed: AD-0266: DatS: Incorrect "Column [%s] value must be not null" for ReadOnly columns
- fixed: AD-0226: TADMemTable: make it more light wheight
- fixed: AD-0260: Stan: AV is possible in the timer pool
- fixed: FPC: ftWideMemo was not supported on FPC
- fixed: AD-0261: AV on Delphi exiting, if to install custom components using AnyDAC
- fixed: TADDataSet: delayed scrolling is enabled, even when it should not
- fixed: AD-0257: Phys: Incorrect error message, when base driver for a virtual driver is not registered
- fixed: Async: possible AV if some service is not linked to app
- fixed: AD-0254: TADConnection: ExecSQL / ExecSQLScale may raise "[AnyDAC][Phys][SQLite]-310"
- fixed: AD-0236: Moni: Improve control of tracing on/off
- fixed: "automatic connection recovery" does not fire OnLosted when died connection is discovered
- fixed: AD-0249: CmdPreproc: Recognizes SELECT INTO as skSelect, while it is skInsert
- fixed: AD-0244: Partial search works incorrectly
- fixed: D2009: variable oMech in uADDatSManager raises a warning
- fixed: AD-0240: Failed to build project if AnyDAC_NOLOCALE_DATA is defined
- fixed: ConnEdit: the Help button does not work for virtual drivers
- fixed: AD-0239: QEdit: "Capability is not supported" on editing a query with escape functions
- fixed: ASA: if connecting is failed, then incorrect exception will be raised
- fixed: AD-0256: Oracle: "Name [...] is not a callable PL/SQL object (NOE130/SP)" with packed stored proc
- fixed: AD-0212: Oracle: "Cannot initialize OCI environment" after 30 sec timeout
- fixed: AD-0242: Oracle: "ORA-01036: illegal variable name/number" on parameter names longer than 30 chars
- fixed: AD-0246: MySQL: "Table 'test._time' doesen't exist" on SELECT FROM_TIME FROM Tab
- fixed: MySQL: the "Commands out of sync" error is possible in some cases
- fixed: AD-0265: PgSQL: DataSnap server fails to post updates
- fixed: AD-0270: PgSQL: AnyDac with Postgres getting a "data length mismatch" on accessing REAL fields
- fixed: AD-0259: FB: TADUpdateSQL.InsertSQL with RETURNING does not refresh auto gen values
- fixed: AD-0250: FB: "ADPhysManager shutdown timeout" is possible after TADQuery.Append call
- fixed: AD-0276: SQLite: "Updated command updated [0] instead of [1] record" on batch update SQL's
- fixed: AD-0275: SQLite: "Index out of bounds" at execution of parameterized batch SQL command
- fixed: AD-0241: SQLite: "No such table" / SQLITE_SCHEMA
- fixed: AD-0238: SQLite: Fails to execute or open PRAGMA command
- fixed: TADCustomManager.GetBaseDriverID does not resolve virtual driver id to a top level id
New in the “Summer 2009” Release, Version 2.0.11 (Build .895)
(Status: May 29, 2009)
- added: AD-0019: FPC: Linux support (see AnyDAC\FPC\readme.txt for details)
- added: AD-0216: SQLite: An expression type may be specified in SELECT list like a 'count(*) as "cnt::int"'
- added: AD-0195: SQLite: finished with ADQA
- added: SQLite: support for savepoints
- added: MySQL: object names support in error messages
- added: Oracle, MSSQL, ASA, MSAccess, DB2, PostgreSQL: AD-0173: Support for binary numeric binding
- added: AD-0200: C++Builder: CB 2007 and 2009 support
- added: Demo: expression evaluating engine demo in folder Samples\Stan Layer\ExprEval
- added: AD-0207: TADDataSet: UpdateConstraints method, actualizing constraints, changed after dataset opening
- added: TADDataFormat: RoundToScale property, controlling time data types rounding
- added: TADMapRules: Add/Remove methods to simplify map rules management
- added: ConDefs: IADStanConnectionDef.MetaDefSchema, MetaDefCatalog properties
- added: ADRandomNumber function allowing to generate BCD's with arbitrary precision and scale
- added: different parameter markers support for ParamByName and ParamByNumber
- added: TADOUDLImporter: OnBeforeWriteOptions event
- added: AD-0201: TADOUDLImporter: support for the MSDASQL
- changed: AD-0152: Pool: the connection pooling is reimplemented to avoid hang-ups and other issues
- changed: Phys: optimized and unified the internal parameter and column management across all the drivers
- changed: Phys: unified class names for all the driver classes
- changed: AD-0158: Phys: Phys manager thread and connection pool threads replaced by tasks, running by a single thread. And some other threading related changes.
- changed: Phys: improved trace output and monitor integration for transaction objects
- changed: Phys: cleanup and optimization
- changed: DApt: removed server side SELECT items comparision with client values at arLock due to multiple potential rounding errors
- changed: ConDefs: major implementation cleanup
- changed: Async: added Launched method, plus cleanup and optimization
- changed: GUIx: removed TADGUIxFormsListView control, uADGUIxFormsUtil unit, few other changes
- changed: GUIx: cleanup of Async dialog API
- changed: Oracle: DATE type mapped to ftDateTime (was ftTimeStamp)
- changed: Oracle: PREFETCH_ROWS is set to ActualRowsetSize
- changed: Oracle: EOCISystemException replaced by EOCINativeException
- changed: Oracle: improved trace output for the variables
- changed: Oracle: specific demos moved to Samples\DBMS Specific\Oracle
- changed: Oracle: ADQA packages are joined into single package
- changed: Oracle: conndef importers does not need to map dtDateTimeStamp to dtDateTime anymore
- changed: IB: improved trace output
- changed: PgSQL: improved support for :param::type
- changed: PgSQL: improved support for VendorHome, VendorLib
- changed: ODBC: code refactoring and cleanup
- changed: TADConnection: AD-0222: Code virtualized to allow the handling of the temporary Connections within a inherited class
- changed: TADConnection: optimized TADCustomConnection.ExecSQL and ExecSQLScalar
- changed: TADConnection: ValidateName is renamed to DoValidateName and made virtual
- changed: TADDataSet: improved protection against running an action, while other is in a progress
- changed: improved GetLastAutoGenValue support
- changed: Help: improved few topics and added RoundToScale description
- changed: ADSpeed: added IB/FB support for test data generator
- changed: Tools: default compiler for all tools now is D2009
- changed: ADQA: reimplemented connection pool tests
- changed: ADQA: updated, fixed, added tests
- changed: Demos: Northwind.Products.Discontinued made BOOLEAN in some of DB's
- fixed: AD-0219: Oracle: fetch performance degradation on the slow networks
- fixed: Oracle: TIMESTAMP support was broken
- fixed: Oracle: incorrect list of values for the CharacterSet parameter
-
fixed: AD-0217: Oracle: AV on DROP TABLE
- fixed: Oracle: failed to execute "explain plan" for parameterized SELECT
- fixed: IB: "Attempt to reopen an open cursor" onsecond call for SELECT FOR UPDATE statement
- fixed: IB: fails to perform {fn CONVERT(..., DATETIME)}
- fixed: IB: cannot recognize ekObjNotExists error in some situations
- fixed: IB: fails to recognize "table/view does not exists" error on FB 1.5
- fixed: PGSQL: incidential call to Win32 API
- fixed: PGSQL: TADPhysPgTransaction is in a "dead" state after error in transaction. Application must explicitly Commit / Rollback this transaction.
- fixed: AD-0209: PGSQL: Fails to process '::'
- fixed: PGSQL: fails to encode / decode some BCD's
- fixed: AD-0138: PGSQL: finished with ADQA, multiple fixes and optimizations done
- fixed: AD-0030: MSSQL, MSAccess, DB2, ASA: Fetch all and close cursors before Commit/Rollback/StartTransaction
- fixed: MSSQL: failed to fetch from systypes with "number out of presion" exception
- fixed: MySQL: fails to cancel a running query on v 5.x
- fixed: MySQL: BIT support was broken. Now it is mapped to ftBytes.
- fixed: MySQL: BOOL support was broken. Now a TINYINT(1) (=BOOL) is mapped to ftBoolean.
- fixed: MySQL: BINARY support was portionally broken. Now a binary-string type SELECT item is mapped to ftVarBytes.
- fixed: SQLite: published load extensions API
- fixed: SQLite: BindNyNumber was broken
- fixed: SQLite: transaction begin / end checking was broken
- fixed: SQLite: multiple meta-data issues
- fixed: SQLite: multiple resultsets support may fail
- fixed: AD-0225: ASA: The v 7 and 8 support is broken
- fixed: MSAcc: {fn CONVERT} was broken
- fixed: AD-0224: ODBC: "Invalid cursor position" at fetching BLOB's from Informix DB
- fixed: ODBC: when TADPhysXXXXDriverLink.ODBCDriver is specified, then driver does not use ODBCAdvanced default value
- fixed: DB2: few minor issues
- fixed: TADDataSet: impossible to post changes in OnBeforeClose
- fixed: AD-0211: TADDataSet: Setting ConstraintsEnabled to False does not disable contraints checking
- fixed: AD-0205: TADDataSet: fails to assign date string constant to ftTimeStamp field
- fixed: AD-0203: TADDataSet: CloneCursor + persistent fkInternalCalc fields fails
- fixed: TADDataSet: "Out of bounds" if update FieldDefs with persistent fields and fkInternalCalc
- fixed: TADDataSet: SetData fails to import dataset with fkInternalCalc fields
- fixed: TADDataSet: Prepare call on detail dataset may fail
- fixed: TADScript: AV is possible in some case
- fixed: AD-0204: TADScript: ADManager timeout on an application termination
- fixed: TADConnection: a password may be removed incorrectly from conn def params
- fixed: TADConnection: ExecSQLScalar gives AV on an erroneous SQL command
- fixed: TADConnection: memory leak after call to Open(...) method
- fixed: TADConnection: ValidateName typo inside
- fixed: AD-0228: TADTransaction: fails to start TX after reconnecting
- fixed: AD-0208: TADTransaction: AV is possible on destruction
- fixed: AD-0213: Fetching: RecsMax / Mode = fmExactRecsMax fetches more records, than specified
- fixed: AD-0227: Metadata: most of the drivers do not return ClientVersion / ServerVersion
- fixed: AD-0210: UpdateSQL: Mixing macros and parameters in update SQL command text kills parameters
- fixed: AD-0218: Update of a fresh inserted Record fails / DApt-400 Error
- removed: Basic, Standard, Prof and Enterprise editions. Now only Trial and Full are supported.
- fixed: Samples: few D5-D7 incompatibilities
- fixed: AD-0215: Install AnyDAC Packages does fails to finish properly (on D2007)
- fixed: QBuilder: ASSERT on line 846 if to build cartesian join
- fixed: ADMonitor: D2009 incompatibility
- fixed: AD-0221: Expression: Comparision of boolean column with True / False always evaluating to False
- fixed: Expression: to_date('96-08-29', 'yy-mm-dd') raises "96-08-29 is not a valid date" exception
- fixed: AD-0220: DatS: serializing a DatS table to XML gives a mem leak
- fixed: DatS: AV is possible in Find method
- fixed: parameter value index checking misses the ArraySize = 0 and AIndex <= 0
- fixed: Moni: Tracer does not flush all data on timeout
- fixed: Demos: multiple issues in demo projects
- fixed: Demos: incorrect path in project group
- fixed: BCB: C++Builder 2006 incompatibility
- fixed: Trial: AD-0229: AnyDAC Trial version fails to install on Delphi Professional
New in the “Spring 2009” Release, Version 2.0.9 (Build .737)
(Status: February 29, 2009)
- added: PGSQL: Final version of the driver
- added: SQLite: Final version of the driver
- added: MySQL: support for ServerOutput
- added: Demo: Oracle PL/SQL table Samples\Comp Layer\TADStoredProc\Oracl_PLSQLTable
- added: TADDataSet: new options coAppend, coEdit for the CopyDataSet method
- added: TADConnection: new ConnectionMetaDataIntf property
- added: TADConnection: new ExecSQLScalar method
- added: TADConnection: new GetInfoReport method, to obtain info about environment
- added: Demo: Info reporting Samples\Comp Layer\TADConnection\InfoReport
- added: ADDataMove: new property TextDataDef.StrsEmpty2Null
- added: ADDataMove: a conversion expression may be specified for a source field
- added: AD-0180: Login Dialog: add ability to translate the option captions
- added: ADScript: new SET IGNORE[error] command
- changed: TADDataSet: optimized bookmarks comparision to improve the performance of a dbGrid with many rows
- changed: AD-0179: RefreshRecord should delete client record if corresponding one in DB is deleted. Also added UpdateOptions.RefreshDelete option controlling that.
- changed: IB/FB: AD-0105: improved and finished Unicode support
- changed: extended connection reporting info
- changed: improved and unified FetchOptions.RecsMax support for most of the drivers
- changed: improved stability of the TADThread
- changed: Help: improved many topics
- changed: utilities are Unicode enabled
- changed: Oracle: {INTO} escape sequence is expanded into INTO keyword
- changed: SQLite: TSQLiteCollation splitted into TSQLiteCollation and TSQLiteCollationCompareStringW
- changed: implemented CliObj for all driver objects
- changed: finalizing improving CopyDataSet, CopyRecord
- fixed: MySQL: "int unsigned auto_increment" column is not recognized as a TADAutoIncField
- fixed: MySQL: fails to assign a MinInt value to a ftInteger parameter
- fixed: MySQL: returns incorrect character field length when UTF8 client character set
- fixed: MySQL: outputs user password into a driver trace
- fixed: MySQL: stored procedure support was broken
- fixed: MySQL: TIBYBLOB, TINYTEXT support was broken
- fixed: MSSQL: AD-0146: fails to retrieve metadata with osMy scope from 2005 or higher server
- fixed: MSSQL: raises "class is not registered" hidden exception, when SQLDMO is not installed
- fixed: Oracle: returns incorrect temporary tables metadata
- fixed: Oracle: raises "file not found" at login, if tnsnames.ora does not exist
- fixed: Oracle: CLOB / BLOB updates posting issue
- fixed: Oracle: does not support PL/SQL table of zero length
- fixed: possible incorrect transaction handling, when the same transaction object is a default and an update transaction
- fixed: IB: does not return correct field origin
- fixed: MSAccess: a Varchar result set column may be defined as a Memo one
- fixed: TADDataSet: fails to serialize dtTime
- fixed: TADDataSet: losts a new record, if to set a filter in dsInsert mode
- fixed: TADDataSet: ServerDeleteAll erroneously requires dataset to be opened
- fixed: TADDataSet: CopyDataSet was broken
- fixed: TADDataSet: FetchAll may lead to unlimited recursion for cloned datasets
- fixed: AD-0181: AV at inserting new record into empty dataset when locking is on
- fixed: TADDataSet.CopyRecord is writing to read-only fields
- fixed: DataAbstract: AnyDAC DAD may raise a "Parameter data type is changed" exception
- fixed: DataSnap: server may hang-up on exiting, if before was a database error
- fixed: DataSnap: TDataSetProvider fails to use multiple result sets of the single command
- fixed: TADScript: AV at executing a SQL command of 4092 byte length or greater
- fixed: dynamically added connection definition does not inherit the tracing and monitor parameters in the ADSettings section
- fixed: $(TEMP)\trace$(NEXT).txt fails to return next file name
- fixed: {IIF} escape sequence fails, if any of values contains ')'
- fixed: dtGUID to dtWideString / dtAnsiString value coversion was broken
- fixed: installer fails to detect D5-D7 Professional SKU
- fixed: AnyDAC fails to compile on Korean Windows
- fixed: D2009 does not register field classes introduced in D2009
- fixed: fails to open the demos in IDE, as some of the GUIx components are not registered
- fixed: few ADExplorer issues
- fixed: PgSQL, MySQL, IB: unified TypeName format (removed length, precision, scale)
- fixed: PgSQL: bind by number, output parameter, CliObj, TID handling issues
- fixed: AD-0193: Demo: CachedUpdates demo fails on few DBMS's
- fixed: PgSQL: issues are demo database installation
- fixed: AD-0192: Blobs demo does not work
- fixed: AD-0191: GUIx: LoginDialog/Main demo does not work
- fixed: AD-0190: MSSQL: "Connection is busy" if to open few meta-data cursors
- fixed: AD-0189: MemTab: Appending record to a DS with nested dataset raised AV
- fixed: AD-0188: ADExplorer does not show the MySQL database names
- fixed: AD-0187: Second call to the CloneDataset for the same DS fails
- fixed: AD-0186: CmdGen: Update SQL Editor generates incorrect FetchRowSQL
- fixed: AD-0185: TADDataSet: After failed posting of an insert to DB, record position will be changed to bottom
- fixed: AD-0184: IB: [AnyDAC][DApt]-400 on posting new record using INSERT ... RETURNING
New in Version 2.0.7 (Build .551)
(Status: November 28, 2008)
- added: PostgreSQL driver (beta-version) (See Wiki for setup details).
- added: SQLite driver (beta-version) (See Wiki for setup details).
- added: Delphi 2009 complete support (See Wiki for Unicode usage details).
- added: MySQL: support for embedded MySQL server - LIBMYSQLD (See Wiki for setup details).
- added: MSAccess: added support for Access 2007
- added: MSSQL: added basic support for MSSQL 2008
- added: Help: many new topic described and updated old ones, adjusted general Help structure
- added: Support for Delphi Professional SKU
- added: few new design-time editors, improoved old ones. Also design time setup dialog to control metadata to return.
- added: UnifyParamNames property, controlling striping of '@' from MSSQL SP param names (False by default)
- added: MonitorBy=FlatFile shows message on application exit with list of produced trace files
- added: at design time TADMemTable with ResourceOptions.Persistent=True and empty FileName stores content into DFM file
- added: TADDataSet: RefreshUnknownRecord method allowing to insert into internal data storage not fetched record and refresh it
- added: TADDataSet: MasterScrollDelay property allowing to delay refresh of detail dataset on master scroll event
- added: TADAutoIncField.GeneratorName property
- added: method TADCustomConnection.ReleaseClients
- changed: MSSQL: improved MSSQL cursor type control. As result, the fetch speed is raised few times. Still if automatically selected cursor is not OK, you can control it through FetchOptions.CursorKind.
- changed: MSSQL: does not work properly with EOL = #13. AnyDAC now adjust EOL to #13#10
- changed: TADDataSet.Execute now is virtual
- changed: TADMemTable.Open may be used instead of CreateDataSet
- fixed: TADMemTable does not use CachedUpdates property
- fixed: few nested dataset issues
- fixed: few cloned dataset issues
- fixed: few dataset streaming issues
- fixed: if required field is not included into persistent field list, then AnyDAC raises error, that field value is required
- fixed: MSSQL: only first PRINT statement result is returned
- fixed: MSSQL: RowsAffected may be incorrect in some cases
- fixed: MSSQL: ADDataMove cannot insert identity value into BIGINT IDENTITY field
- fixed: MSSQL: possible "WHERE must be not empty" on generating INSERT command
- fixed: ASA: fails to fetch rowset with BLOB in the middle
- fixed: TADTextWriter fails to write UTF16 text
- fixed: explicit setting TADxxxOptions option value to its default value, does not override inherited value
- fixed: ResourceOptions.Persistent and Backup was always overwritten by design time editors
- fixed: UpdateOptions.UpdateTableName is ignored
- fixed: Oracle: password is put into trace
- fixed: Oracle: CurrentSchema was not updated
- fixed: IB: AV on getting meta info kind = mkPackages
- fixed: IB: if Unidirectional = True, then "cannot perform this operation on unidir dataset" after Next on last dataset record
- fixed: IB: "assertion failed" at Ping call
- fixed: MSAccess: does not allow insert value into autoincrement column
- fixed: DB2: UK violation exception is not raised, but put into Messages
- fixed: sequences / generator support was broken
- fixed: AV possible in TADGUIxFormsAsyncDialog
- fixed: asynchronous command execution potential timing issues
- fixed: settingup TADStoredProc at design time gives AV
- fixed: assignment to the TBCDField.Value truncates value
- fixed: AV at parameterized query execution if to use AsFloat and dtBCD -> dtDouble data type mapping
- fixed: [AnyDAC][Stan][Def]-250, if to setup driver link
- fixed: "object xxx is not found" if to specify custom parameter in TADUpdateSQL.XxxxSQL
- fixed: fails to edit SELECT columns with aliases
- fixed: hangup at application exit after recovering of losted connection
- fixed: hangup at Commit/Rollback after recovering of losted connection
- fixed: DataSnap: fails to transfer AnsiString parameters
- fixed: AV at recovering of losted connection
- fixed: ADExplorer fails to work on clear workstation
- removed: TADUpdateOptions.CacheUpdateCommands is removed
New in Version 2.0.5 (Build .365)
(Status: August 31, 2008)
- added: AD-0017, 0066: Delphi 2009 support and complete Unicode support
- added: support for WITH ... SELECT
- added: IADPhysConnection.CurrentCatalog & CurrentSchema read-only props
- added: MSSQL, ASA: support for {fn CATALOG()} escape sequence
- added: method TADCustomConnection.Open(AConnectionString)
- added: property TADCustomConnection.Messages
- added: MySQL: support for command execution abortion
- added: AD-0088: FlatFile parameter MonitorByFlatFile_Columns
- added: AD-0094: trace output for non-EADDBEngineException's
- added: Oracle: added CharacterSetName connection definition parameter
- added: TADDataMove.TextFileEncoding, LogFileEncoding new properties
- added: MonitorByFlatFile_Encoding new parameter
- added: AD-0085: MSSQL 2005: support for password changing, XML and UDT data types, snapshot transaction isolation
- added: AD-0110: snapshot transaction isolation level
- added: TADScript: SET ENCODING command
- added: TADAutoIncField.IdentityInsert property, TADDataMoveOptions.poIdentityInsert option
- added: MySQL: support for FetchOptions.RecsMax & SELECT
- added: AD-0087: FetchOptions.CursorKind property
- added: support for ReadOnly transactions for all ODBC based drivers
- changed: unified variables naming for trace output
- changed: few TADParam / TADParams minor improvements
- changed: MonitorBy=FlatFile|Custom will not output at design time
- changed: Oracle: dumping V$NLS_PARAMETERS now is off by default
- changed: improved support for Sybase ASE / Informix DBMS's
- changed: cleanup and simplification of Query Builder
- changed: AD-0082: improved most of dataset error messages
- changed: improved cloned dataset support
- changed: improved Unidirectional=True handling
- changed: AD-0081: UpdateOptions.UseProviderFlags is removed
- changed: TADParam.Size < 0 is equivalent to = 0. Variable length data parameter values are checked agains TADParam.Size right at value assignment.
- changed: AD-0093: improoved API to get client / server / anydac info
- changed: MySQL: Utf8Mapping parameter is removed
- changed: Oracle: removed BytesPerChar connection definition parameter
- changed: AD-0088: improved and unified FlatFile and Remote output formats
- changed: most of expression evaluator functions moved to uADStanExprFuncs unit
- changed: TADQuery.DataSource renamed to MasterSource (keeping backward compatibility), MasterFields is published
- changed: improoved cursor type control all ODBC based drivers
- changed: improoved TADTable design time support
- changed: AD-0062: Prepared property move to public
- fixed: IB: "value too large for variable" on UTF8 strings and Array DML
- fixed: IB: UTF8 support was broken
- fixed: Oracle: ORA-00922 if set connection definition parameter SQLTrace=True
- fixed: ODBC: cannot connect to MSSQL using ODBC bridge driver
- fixed: MSSQL: force direct execution for some of the queries (BACKUP, etc)
- fixed: {IF} ... {FI} escape sequences support was broken
- fixed: {S} escape sequence support was broken
- fixed: single #13 is removed from SQL command, giving syntax error
- fixed: wrong processing of '\', if not (piExpandEscapes in Instrs)
- fixed: Lock and update commands with UpdateChangedFields=False include non-updatable columns into SQL
- fixed: AD-0069: few issues with selecting metadata mkTables
- fixed: AD-0080, 0079: rounding issue at dtFmtBCD -> dtDouble mapping
- fixed: AD-0001: issue at dtAnsiString -> dtIntXXX mapping
- fixed: AD-0003: if set MasterFields before IndexFieldNames, then ADMemTable will be emtied
- fixed: application hang ups if an unhandled EADDBEngineException exception was raised
- fixed: C++Builder 5 incompatibility in uADPhysODBCBase
- fixed: few issues in ADExplorer
- fixed: AD-0091: transaction remains active after posting updates with LockMode <> lmNone
- fixed: Query Builder does not return SQL text
- fixed: AD-0081: setting UpdateOptions.KeyFields does not have effect after Open call
- fixed: AD-0094: few tracing regression issues
- fixed: AD-0096: Oracle: failed connect to Oracle 11g
- fixed: AD-0100: MSSQL: Array DML fails on MSSQL 2005
- fixed: AD-0099: ODBC: Fixed char data type support is broken in all ODBC based drivers
- fixed: AD-0102: Oracle: fixed Oracle 10g incompatibilities
- fixed: ASA: fixed "invalid cursor position" error
- fixed: AD-0107: MSSQL: TADQuery.Edit / Post fires triggers, but it fails
- fixed: AD-0108: MSSQL: money type is mapped to BCD instead of Currency
- fixed: AD-0109: AV at assigning of empty string to TADParam.AsWideString
- fixed: AD-0111: Client autoincrementing does not work for dataset in CachedUpdated mode with default fields
- fixed: AD-0103: TADDataMove fails to assign value to auto-increment fields
- fixed: AD-0112: Too large memory consumption on fetching large datasets
- fixed: AD-0042: Inserting into detail TADQuery, does not fill detail fields
- fixed: AD-0067: TADQuery.MasterFields is cleared after setting DataSource
- fixed: TBytesField can return garbage after actual value
- fixed: FetchOptions editor frame issues
- fixed: AD-0009: Oracle: automatic connection recovery fails in 2 additional cases
- fixed: AD-0114: AV / Invalid pointer operation in D5 applications
- fixed: ERegistryException at Delphi IDE startup
- fixed: AD-0059: few TADDataSet asynchronous mode issues
New in Version 2.0.3 (Build .295)
(Status: May 30, 2008)
- added: ADO UDL importer parameter shortcuts support for ASA
- added: TADDataSet.CopyDataSet method
- added: TADCustomTransaction.NestingLevel property
- added: check that number of parameters remains the same after Prepare
- added: Context Database Designer adapter added to the 3d party
- added: Fast Report 3 integration added to the 3d party
- added: IB/FB: added SQL dialect 1 support
- added: VendorHome, VendorLib, ODBCDriver, ODBCAdvanced driver link properties added
- added: FPC v 2.2.1 support
- added: {s ...} escape sequence added
- added: ADExecutor will execute command from standard input, if no scripts is specified
- changed: AnyDAC does not anymore depend on Indy.
- Indy monitoring replaced by Remote one, use MonitorBy=Remote.
- changed: in uADCompDataMove.pas all AsciiXXX renamed to TextXXX
- changed: reorgonized TADTxOptions - added xoFinishRetaining to StopOptions,
- StopAction renamed to DisconnectAction, DisconnectAction controls
- only what will happen on connection closing
- changed: AutoCommit and TransIsolation connection definition parameters are removed
- Use TxOptions properties instead.
- changed: optimized tracing / monitoring code. Now application
- will run fast with {$DEFINE AnyDAC_Monitor}.
- changed: lock mode lmRely renamed into lmNone
- changed: added name reporting to few error messages
- changed: optimized internal query text handling
- changed: ODBC: optimized rows fetching for 5%
- changed: Oracle: optimized cursor opening
- changed: TADDatSRow.ValueXXX properties are now writable.
- Value[] is the default property.
- fixed: fails to convert dtBlob to dtAnsiString
- fixed: memory leak if TADQuery.Post -> exception -> TADQuery.Free (AD-71)
- fixed: ADQuery does not fetch detail records if fiDetails is in FetchOptions.Cache
- and FetchOptions.RecordCountMode <> cmVisible (AD-72)
- fixed: IB: few array dml issues on FB & UTF8
- fixed: Oracle: "no data found" on REF CURSOR
- fixed: Oracle: ORA-01453 on repeating Edit/Post more than 2 times
- fixed: Oracle: ORA-01722 possible, if to map dtDouble to dtBCD on FLOAT(126) fields (AD-74)
- fixed: MSSQL: few array dml issues (AD-78, AD-65, etc)
- fixed: Oracle: possible ORA-24508 at fetching NVARCHAR(15)
- fixed: Oracle: erroneously recognizes :new. / :old. as parameters
- fixed: ADScript: AV at disconnected executing
- fixed: ADScript: COPY FROM FILE builds incorrect CSV file name
- fixed: ADScript: AV in ADDataMove in "silent" mode
- fixed: Prepare makes parameter references invalid (AD-63)
- fixed: TDataSet.GetCanModify is not overriden (AD-64)
- fixed: FastReport adapter does not set parameter values correctly
- fixed: command does not use TADTransaction assigned to TADConnection.Transaction
- fixed: "dataset must be active" error on DBGridEh connected to inactive dataset
- fixed: RecordCountMode=cmTotal on unidirectional dataset may fetch all records
- fixed: IB: Array DML has bugs in isc_dsql_batch_execute, so do not use it
- fixed: IB: TADParam.Size / Precision / Scale was not used
- fixed: IB: incorrectly recognizes "cannot create ..." error as "object does not exist"
- fixed: MSSQL: varchar(max) support was broken
- fixed: "ADMENU not found" at design time package loading
- fixed: FPC v 2.2.1 incompatibility issues
- fixed: FPC v 2.2.1 incompatibility issues
- fixed: "[RC fatal Error] uADSplash.res(1) Input and output file names are the same"
- fixed: ApplyUpdates, Reconcile does not use ResourceOptions.SilentMode
- fixed: few issues in remote monitoring
- fixed: all dialogs will be now main form centered
- fixed: DBERR_NONE is not found on D7
- fixed: dataset with current index on InternalCalc field, losts position after post
- fixed: few issues in TADTable
- fixed: few issues in ADScript
- fixed: MSAccess: "Cannot parse name" on select * from "c:\db.mdb".MyTable
- fixed: TDBX: bridge multiple issues are fixed
- fixed: MySQL: Does not support &&
- fixed: IB: improoved FB Embedded support
- fixed: MSSQL: "Invalid character value for cast specification" on Array DML
- fixed: MSSQL: possible wrong bytes in fetched BLOB values
- fixed: Oracle: NUMBER is defined as dtDouble, but must be dtFmtBCD
- fixed: Connection editor fails to edit active connection
- fixed: ODBC: few incompatibility issues (with Informix and Sybase Adaptive servers)
New in Version 2.0.1 (Build .283)
(Status: March 6, 2008)
- added: TADQuery.ExecSQL will take parameter values from MasterSource, if specified
- added: DBX bridge updated to current DBX4 API, added correct meta data handling
- changed: after installation, ADDrivers.ini will be empty
- changed: renamed ResourceOptions.MaxBatchSize into ArrayDMLSize
- changed: ResourceOptions.AutoConnect, AutoDisconnect, AutoOnline replaced by AutoManage
- changed: AutoConnRestore renamed to AutoReconnect and published TADConnection.OnRecover/OnLosted/OnRestored
- changed: TADDataSet.Unidirectional moved to FetchOptions.Unidirectional
- changed: TADDataSet.UpdateRecordTypes renamed into FilterChanges
- changed: now AnyDAC_NOLOCALE_DATA and AnyDAC_NOLOCALE_META are not defined by default
- fixed: DBX: MS SQL CE incompatibility issues in DBX Bridge
- fixed: DS: AV on insert record with dupe key, then deleting last record in dataset
- fixed: DS: After adding new record with dup key, then canceling
- addition, dataset position changes incorrectly
- fixed: DS: descending sorting using index does not work correctly
- fixed: DS: FindKey does not use case-insensitive index
- fixed: XML streaming of ftDateTime, ftTimeStamp does not work
- fixed: possible incorrect detection of stream format
- fixed: Oracle: generation of wrong PL/SQL block for stored procedure call from pre-specified parameters
- fixed: Oracle: possible incorrect handling of OCI_NO_DATA
- fixed: Oracle: PL/SQL table support were broken
- fixed: Sybase ASA: connection parameter Server does not work
- fixed: BCB5 incompatibility fixed: ADExplorer does not show data for Sybase SQL Anywhere tables
- fixed: IB: OpenOrExecute does not work
- fixed: Query Builder does not support quoted column names
- fixed: AV in DataSet Editor
- fixed: Support for quoted column names was broken
New in Version 2.0.1 (Build .281)
(Status: February 21, 2008)
Initial Release
