Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win


Delphi database framework

Posted on 2002-03-07
Medium Priority
Last Modified: 2013-11-23

I'm evaluating some of delphi framework to data access and fell very hard to choose what of them to
use for a new project.

dbexpress - hmmm..... very tempter.. but I really afraid the way it works, have to manage in-memory
register quantity(no pointer), not automatic post, reconcile error, unidirectional.... I think it introduces
many code challenges....And I can fail in the project :-(....

ADO - good....but...very windows specific.

Interbase - good...but...very borland specific.

BDE/ODBC - overtaken...no way.

Please give me your opinion.

Question by:paulo_psa
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Accepted Solution

TOndrej earned 100 total points
ID: 6849157
> Interbase - good...but...very borland specific.

FireBird is an OpenSource branch of Interbase:
LVL 27

Assisted Solution

kretzschmar earned 100 total points
ID: 6849757
oracle-> very oracle specific
db2->very ibm specific

for what are you after?
there is no general issue
LVL 17

Assisted Solution

by:Wim ten Brink
Wim ten Brink earned 100 total points
ID: 6850324
DBExpress is a nice option but it's still not popular enough and I fear that most developers will prefer other alternatives.
The BDE is also a good option but unfortunately you're required to add the 11 MB database engine to your project. Not a real good solution then.
BDE/ODBC used to be a good option but there are better alternatives now.
Interbase, Oracle, DB2, ect. all have special Delphi components giving you access to those specific databases. These are IBExpress for Interbase and ODAC for Oracle. Some of these component-sets are commercial versions while others are free. But the problem is that it fixates you to use only one type of database.
OLE DB/ADO is one of the better alternatives then. It does require that you have an OLE DB driver for the database you're using or, if you don't have an OLE DB driver, that you use an ODBC driver that is connected to the OLE DB ODBC driver. And yes, it is very Windows specific but it has a good performance, especially in multitier applications. However, writing ADO applications can be very challenging too...

Actually, picking the right database framework depends on what you're going to use it for. You have to decide what database you're going to use first. Oracle, Interbase, Paradox, MS SQL, MySQL, Access, DB2, BTrieve or whatever other database you like. You might even consider that the the user can choose which database to use himself.
Then you have to decide upon the architecture of your application. Will it run locally on the same machine as the database? Will it be a client-server application? Or do you create a multi-tier application?
Btw, for client-server and multitier applications using ADO it doesn't matter what operating system the database server is using. I've used ADO with an Oracle database on a HP Unix machine and it's working fine! That's because the ADO components communicate with the locally installed Oracle Client libraries and these libraries communicate with their own protocol with the Oracle server.

For multi-tier applications, my suggestion is not to use Midas unless you need to be Windows independant. Use ADO because there are no licence costs for ADO. Furthermore, ADO is language-independant and can even be used in webservers. It has the same abilities as Midas and I even wonder why we need Midas anyways...
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 17

Assisted Solution

geobul earned 100 total points
ID: 6852587
There is no general answer to your question. If there had been such an answer there wouldn't have been so many ways for connecting databases and all developers would have used one way only and always.
Any solution has its own advantages (and disadvantages) and depends on various criterias such as performance, cost, maintenance (if it's easy enough to manage), support (from the supplier), hardware and software requirements, data volume, etc.
If you tell us more about your environment and requrements, experts will be able to propose solutions based on their experience.

Regards, Geo

Expert Comment

ID: 9343295
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Post your closing recommendations!  No comment means you don't care.
LVL 17

Expert Comment

ID: 9346901
Split points among all experts.

Expert Comment

ID: 9470496
Wow, Its been a long time since this comment have been visited!

No comment has been added lately (19 days), so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area for this question:

RECOMMENDATION: split points between TOndrej http:#6849157 and kretzschmar http:#6849757 and Workshop_Alex http:#6850324 and geobul http:#6852587

-- Please DO NOT accept this comment as an answer ! --


EE Cleanup Volunteer

Remember you (all) can object this recommendation if you disagree, just leave a post here explaining why are you objecting and what should be done instead.
Within 7 days probably this thread will be closed, so, hurry up! : )

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
Suggested Courses

650 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question