?
Solved

Delphi database framework

Posted on 2002-03-07
7
Medium Priority
?
557 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 100 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 100 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 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...
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 17

Assisted Solution

by:geobul
geobul earned 100 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

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

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

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
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 this video we outline the Physical Segments view of NetCrunch network monitor. By following this brief how-to video, you will be able to learn how NetCrunch visualizes your network, how granular is the information collected, as well as where to f…
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
Suggested Courses
Course of the Month7 days, 20 hours left to enroll

765 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