I got a great call the other morning. A Delphi developer from a few versions back was considering upgrading to XE5, but he wanted to know if FireDAC was recommended for database access, or if he would need a 3rd party library.
I remember working on some data driven Delphi applications when the drill was you always bought a 3rd party database access library. There are lots of great database access libraries to choose from, which is one of the great things about Delphi: all the technology partners!
In XE5 the BDE is officially deprecated (and has been for a while), but it still ships (maybe not for much longer though). dbExpress is still there, and so is dbGo and IBX, and they are all good, specialized database access libraries. But with the full integration of FireDAC in XE5, it is the recommended database access library, and for good reason.
FireDAC is a universal data access library: you use the same components to connect to a huge variety of databases. The usage pattern is similar to the BDE, and it is fully bidirectional. It also has a large collection of specialized features for dealing with specific databases, and local, in memory data.
If you are still on the BDE, check out the FireDAC migration guide or any of the other great FireDAC documentation. Cary Jensen just did a fabulous webinar on FireDAC including a fabulous 70 page whitepaper.
Of course you are still welcome to continue using 3rd party libraries, and some of them may offer some other specialized features. That is one of the great things about Delphi, C++Builder and RAD Studio: It comes with great features in the box, but you can expand on those with 3rd party libraries.
If you still aren’t on XE5, you still have a little time to take advantage of the special offers.
8 replies on “FireDAC is the Recommended Database Access Library”
Where can I get the whitepaper? I never get send a mail with a downloadlink when I register.
What about TClientDataset? Is that still recommended to use as a “neutral” and flexible data container above any data access layer, or is there a FireDac equivalent that offers some advantages?
So, does FireDAC support Dbase tables? If yes, what’s the performance like?
(And why does the bloody comment system think this is spam? I hate it when this happens. This is my last try, if you see this comment, it went through.)
Sorry the comment system is falsely labeling your comments as spam Thomas. I’ll look into that. Thanks for letting me know.
FireDAC doesn’t support DBase or Paradox. You would need to move to Interbase, Firebird or SQLite. The latter being a very lightweight and free embeddable database.
RichardS: FireDAC has a TFDMemTable, which is faster than TClientDataSet http://docwiki.embarcadero.com/RADStudio/XE5/en/TFDMemTable_Questions
Roland: I registered via the link above and got an email and download link. Check your spam folder maybe and check your email address?
Unidac is best
Conect mysql in mobile more speed
Thanks for the reply. Does this mean TClientDataset is unlikely to be developed any further, ie on the way to being deprecated?
AFAIK TClientDataset will still see development. I don’t believe TFDMemTable is a complete replacement for it.
fire dac tablegrid https://www.youtube.com/watch?v=XzuzG8elfLY