Additional
AnyDAC v 2.0 FAQ
Posted by Diman [Aug 07, 2007]
Some answers on most common questions regarding AnyDAC v 2.0 (updated on 14-Sep)

1. Q: What will be there ?
A: Here are v 2.0 history entries (for today). The list continue to grow in "added" and more in "fixed" areas.

 

  + added: SQL script engine. Analogue of Oracle SQL*Plus with extentions for other supported by AnyDAC DBMS's. ADPump was removed. Now it is one of the commands of ADExecutor.
  + added: dataset persistence (XML, BIN). TADDataSet.LoadFromStream, LoadFromFile, SaveToStream, SaveToFile methods. ResourceOptions.Persistent, PersistentFileName, Backup, etc options.
  + added: dataset disconnected mode (TADConnection.Offline, Online, Offlined, ResourceOptions.AutoOnline)
  + added: connection automatic recovery (TADConnection.OnConnectionLost, OnConnectionFailed, OnConnectionRestored, Ping, ResourceOptions.AutoConnRestore, etc)
  + added: connection sharing between application modules. See new demo DEMO\Comp Layer\TADConnection\DLL_Sharing
  + added: ResourceOptions.ServerOutput, ServerOutputSize. These options are supported by Oracle and MSSQL.
  + added: ResourceOptions.AutoConnect. If True, then connection will automatically connect / disconnect, then it will be required. Otherwise exception will be raised.
  + added: TADConnection.Execute for simple SQL commands execution
  + added: BeforeExecute, AfterExecute, BeforeApplyUpdates, AfterApplyUpdates, BeforeGetRecords, AfterGetRecords, etc dataset events
  + added: Oracle: support for TIMESTAMP data type
  + added: C_AD_Version constant containing AnyDAC sources version
  + added: TADDataSet.OpenOrExecute method
  + added: DBMS specific exception classes EASANativeException, EMSSQLNativeException, EMSAccessNativeException, EDB2NativeException, etc
  + added: support for Sybase SQL Anywhere 9, 10
  + added: support for ASA MESSAGE command
  + added: {IF ...} macro sequence is not compatible with 1.x. Now use {IF...} ... {FI} or {IIF , , ...} instead.
  + added: LocateEx and LookupEx with ability to search forward/backward, from start/current position, by fields/expression
  + added: TADResourceOptions.PreprocessCmdText allows to turn on/off command text preprocessing. By default is True.
  + added: TADUpdateOptions.UpdateKeyFields allows to specify key fields for UPDATE / DELETE operations
  / changed: MIDAS / dbGo support improoved
  / changed: Removed TADDataSet.FetchParams method
  / changed: Renamed TADClientDataSet into TADMemTable
  / changed: "AnyDAC Devs" is now hidden by installer
  / changed: Removed TADParam.Active property
  / changed: MySQL: improved support for case-sensitivity modes
  / changed: AsyncCmdXXX options renamed to CmdExecXXX
  / changed: MSSQL2000 and MSSQL2005 driver ID's replaced by MSSQL. It is not required anymore because - see sections MSSQL2000 and MSSQL2005 in DB\ADDrivers.sample
  / changed: Generic ODBC driver parameter 'Driver' renamed to 'ODBCDriver'
  / changed: {(...)} macro sequence is shortcut for {FN (...)}
  / changed: TADDatSTable.Import is optimized
  / changed: now '\' is escape character in SQL preprocessor insetad of '^'
  / changed: now it is enough to include daADGUIxFormsfLogin into uses to have default login dialog
  / changed: TADDataSet.LocateRecord is now protected method
  - fixed: Dont process escape sequences inside of string constants in SQL
  - fixed: "Range error" exception on TWideStringField.Value := ''
  - fixed: TADParam.Clear(i) clears all
  - fixed: ftWideMemo support for D2006/D2007 was broken
  - fixed: != and &= was handling as macros
  - fixed: "DataSet not in edit mode" at assigning value to InternalCalc field in OnCalcFields event handler
  - fixed: DisplayFormat for aggregate fields is not used
  - fixed: Unidirectional = True and FetchAll gives "Out of memory" on big rowsets
  - fixed: memory leak if preparing query with parameter of ftUnknown data types
  - fixed: AV on IndexFieldNames has the field not in dataset
  - fixed: AV on row deletion
  - fixed: AV on sequenced execution of same query with different Params.ArraySize values
  - fixed: AV on executing command with AsyncCmdTimeout > 0
  - fixed: aggregates/filters on fkInternalCalc fields, calculated by OnCalFields event handler does not work
  - fixed: sorting / ranging by Boolean and Binary fields does not work
  - fixed: command preprocessor does not handle '', "", \x in string literals
  - fixed: ODBC (MSSQL, ASA, DB2, etc): multiple issues with array execution
  - fixed: ODBC: possible AV in driver
  - fixed: ODBC: possible error on multiple cursors
  - fixed: ODBC: possible AV in driver if monitoring was active
  - fixed: MySQL: the datetime value was null if date and time parts are zeros. But it is enough a date part to be zero.
  - fixed: MySQL: Array DML fails with INSERT INTO table (a,b,c) VALUES (:p1,:p2,:p3) ON DUPLICATE KEY UPDATE c=VALUES(a)+VALUES(b)
  - fixed: MySQL: "Unvalid argument to time encode" on negative time value
  - fixed: MSSQL: raiseerror does not raise exception on client
  - fixed: MSSQL: if posting changes from TADQuery fires some triggers, which will update other tables, then only single record will be updated
  - fixed: MSSQL: TADConnection.GetLastAutoGenValue returns always Null
  - fixed: MSSQL: assertion failure if ftBlob parameter has value of zero length, but not Null
  - fixed: MSSQL: 3604 handled as error
  - fixed: MSSQL: "cannot prepare" on SET QUOTED_IDENTIFIER ON
  - fixed: Oracle: Instant Client support was broken
  - fixed: Oracle: if exception happened at array DML execution, then RowsAffected is not updated properly
  - fixed: Oracle: metadata retrieval does not support ALTER SESSION SET CURRENT_SCHEMA
  - fixed: Oracle: if SP does not exists, then raised '"PUBLIC". does not exists'
  - fixed: Oracle: ORA-24806 on utf8/ucs2 systems
  - fixed: Oracle: "invalid pointer" on reading / writing Unicode BLOB/CLOB
  - fixed: Oracle: incorrect reading / writing Unicode BLOB/CLOB
  - fixed: Oracle: "expected FROM" on metadata fetching
  - fixed: "dublicate list entry" on havy threading
  - fixed: exception "invalid decimal" in TADDatSRow.SetData
  - fixed: TADDatSMechSort.SortingOn
  - fixed: memory leak if application used ADManager, but had no active connections
  - fixed: memory leak on transaction release
  - fixed: possible AV in TADDataSet in M/D, unidirectional, etc usage cases
  - fixed: possible AV after Delete & ApplyUpdates & CommitUpdates
  - fixed: possible AV on logon failure
  - fixed: TADDataMove hangup

 

2. Q: When it will be ready ?
A: 15 September will be launched AnyDAC v 2.0 beta testing. One month later AnyDAC v 2.0 will be released.

 

3. Q: There will be free version ?
A: Yes. There will be few packs to choose. One will be free or GPL - we will see. The difference between it and others will be the set of features.

 

4. Q: What about docu ?
A: We are developing help file, which will be part of AnyDAC v 2.0 commercial packs.

 

5. Q: Can I participate in beta ?
A: Yes, we will invite most active reporting users and all, who bought high-priority technical support. AnyDAC v 2.0 will be distributed in few commercial and one free packs. But AnyDAC 2.0 beta installer includes all features. Because that only subscribers with not expired AnyDAC v 1.0 high priority technical support will be able to participate in AnyDAC v 2.0 beta testing. And later all of them will get license for one of few commercial packs.


LIST OF COMMENTS


1/8. Mr
Posted by jun - Aug 11, 2007
Website
HOw about postgres?

2/8. Mr
Posted by Anon - Aug 13, 2007
Website
Yes How about support for Postgres which is getting popular

3/8. PostgreSQL driver
Posted by Diman - Aug 14, 2007
Website
No PostgreSQL driver will be in V 2.0.  But I am planning it for V 3.0.

4/8. FireBird suport
Posted by Bruno - Aug 15, 2007
Website
Can't wait to test the FB/IB support! :)

5/8. Update version
Posted by delphichem - Sep 09, 2007
Website
Dear Diman
Can you please publish an update version to 1.12.2 with only fixes (no new features)

Thank you

6/8. Re: Update version
Posted by Diman - Sep 09, 2007
Website
Sorry, but 1.12.2 will be last version in 1.x serie. You should consider upgrading to 2.x.

7/8. New release date???
Posted by geomagas - Oct 23, 2007
Website

Hi,

"2. Q: When it will be ready ?
A: 15 September will be launched AnyDAC v 2.0 beta testing. One month later AnyDAC v 2.0 will be released."

Is there a new release date for v2.0?


8/8. Mr
Posted by Christer Johansson - Nov 07, 2007
Website

Can I use this engine with a Paradox database? What drivers .dll files do I have to deliver to users of my application to get it running?

Thanks


Add Comments