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