Vassil Nazarov

Author Homepage:

Send e-mail to this Author

Do you have an existing Delphi Legacy Application?
Does it still use Paradox files? Or Old Databases?
Are you looking to Upgrade your software?
Do you have Dedicated Delphi Programmers?
We are Delphi Solution Partners to clients across the globe with expertise from Delphi 5 to Delphi 10.3 Rio.
Author Products

Total 1 product

TBetterADODataSet v.4.04

DB-Aware Components > Direct DB Access > MS Other

By Vassil Nazarov.

Freeware + source 12 Jan 2006


TBetterADODataSet is a direct descendent of Borland's TADODataSet which means that if and when Borland releases a new patch and/or version of their ADOExpress library it won't break any existing code written to use this descendant. Farther more, although author sincerely believes that the next version of ADOExpress (D6) shall render this component unnecessary, it will transparently inherit any bug-fixes and new features that Borland may release.

TBetterADODataSet works around several Bugs of TCustomADODataSet:

  • A bug in TCustomADODataSet.CancelBatch
  • A bug in TCustomADODataSet.GetCanModify
  • A bug in TCustomADODataSet.DoAfterScroll.
TBetterADODataSet introduces new features not surfaced in TADODataSet:
  • Proper inserting, editing and deleting with Joined ResultSets with automatic JoinTest, automatic or manual JoinsResolution, and DeleteGuardian. Also see InternalPost.
  • The most important ADO RecordSet's dynamic properties implemented as native Delphi properties for easy access and persistence. See Resync_Command, Unique_Catalog, Unique_Schema, Unique_Table, Update_Criteria and Update_Resync.
  • Proper initialization of the "Required" and "ReadOnly" attributes of TFields where supported by the provider. See InternalInitFieldDefs.
  • Support for several new features introduced in MDAC 2.5 and 2.6. See SaveToADOStream, LoadFromADOStream, FieldStatus and NamedParams.
  • A new Refresh method to cover Requery and most aspects of ADO's Resync in conjunction with the new RefreshType property. Defaults to Resync the current record only. Also see DoBeforeRefresh.
  • Some convenience features. See ParamByName, GetString and Errors.
  • Implement support for pessimistic locking with the JET provider.
TBetterADODataSet extends some features of TADODataSet:
  • The Requery method extended to persist the settings of the implemented dynamic properties.
  • The DeleteRecords method extended to support arAll and arAllChapters.


  • Status: Fully functional
  • Source: Included
  • Size: 75kB

Platforms: D2006, D5, D6, D7

More interesting links and pages

Check out Valforex reviews

Scrummaster and Agile trainings

Word Unscrambler

Check the best online casinos in UK

What is control panel?

China Wholesale Suppliers Directory

Free Angram Solver

Syllable Word Counter

Printable Sudoku Puzzles

Download Instagram Stories

Word Search Puzzles

Try out new casino sites at

Discover UK licensed casino sites at Casinopilot