Solved

Delphi database framework

Posted on 2002-03-07
7
550 Views
Last Modified: 2013-11-23
Hi,

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.

regards
Paulo
0
Comment
Question by:paulo_psa
[X]
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
7 Comments
 
LVL 8

Accepted Solution

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

FireBird is an OpenSource branch of Interbase:
http://www.ibphoenix.com/
0
 
LVL 27

Assisted Solution

by:kretzschmar
kretzschmar earned 25 total points
ID: 6849757
oracle-> very oracle specific
db2->very ibm specific
...

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

Assisted Solution

by:Wim ten Brink
Wim ten Brink earned 25 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...
0
Industry Leaders: 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

by:geobul
geobul earned 25 total points
ID: 6852587
Hi,
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
0
 

Expert Comment

by:CleanupPing
ID: 9343295
paulo_psa:
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 
EXPERTS:
Post your closing recommendations!  No comment means you don't care.
0
 
LVL 17

Expert Comment

by:geobul
ID: 9346901
Split points among all experts.
0
 
LVL 7

Expert Comment

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

paulo_psa,
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 ! --

Thanks,

knightmad
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! : )
0

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

This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…

728 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