What is the best component to use to convert the Delphi 3 BDE to Delphi 2010

I have 2 apps written in Delphi 2 and 3. I need to convert them to Delphi 2010. What alternatives are there to the BDE that will work with oracle? I modify the sql statements in the code using modify/insert/update/delete.
LVL 3
zstafaAsked:
Who is Participating?
 
Geert GOracle dbaCommented:
if you want to fast components you can go with www.devart.com
they have really good database components > look for ODAC
0
 
Ephraim WangoyaCommented:
You can use DBExpress or  DBGO components
They work fine
0
 
aflarinCommented:
I think DBExpress will be the best choice.

This links may help you:

http://edn.embarcadero.com/article/29106

Also you can try these components:

http://www.ethea.it/eng_instantbdexpress.asp
0
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

 
AndrewB2Commented:
You could give Zeoslib a go - freeware and quite mature.
 http://zeos.firmos.at/portal.php
0
 
senadCommented:
0
 
aikimarkCommented:
@zstafa

Are you looking for a component that you drop into your project, rename all BDE references to the new component and expect it to compile?  I doubt one exists.  The conversion will require some programming.  You must understand the BDE code as well as equivalent relational database methods.
0
 
zstafaAuthor Commented:
I am only looking for the the component that will give me the least problems during the conversion process. I am currently testing all of the proposed solutions and will be accepting soon. Thanks for all of your help.
0
 
Geert GOracle dbaCommented:
it mostly depends on how the code is written

if you use query components directly from the palette is the least effort
to implement straight away.

However if you build a library/package around the components you want
and then use that library/package, you only need to change the base components in the library/package

sample libcode:

  TXQuery = class(TQuery)
  end;

in your code you would be using TXQuery instead of TQuery

If you wanted to  change to a other component (for whatever reason)

  TXQuery = class(TADOQuery)
  end;

or
  TXQuery = class(TIBQuery)
  end;

or
  TXQuery = class(TSQuery)  
  end;

it can happen that you need to redeclare some properties
because some components are not directly interchangeable
0
 
zstafaAuthor Commented:
I was told by a coworker that DBExpress is supposed to be used only for small applications and will not be fast enough for the data driven app that we have? Is this true? I am currently testing aflarin's solution and if this is the case then it wont work.... thanks
0
 
aikimarkCommented:
@zstafa

We need more information.  

1. What kind of database are you going to connect to?
2. Are you using a disconnected/briefcase model?
3. Where will the Delphi application reside in relation to the database? (network proximity)
4. What database drivers are you using?
5. On what data is your coworker basing his statements about dbExpress performance?
6. What are your performance requirements?
0
 
zstafaAuthor Commented:
1. Oracle 10
2. We are using a direct connection and storing pre-save changes in a paradox database
3. It's a WAN .... for example a large university
4. We are trying to make a decision on what to use
5. He is basing his information on stuff he read on the internet
6. I am looking for the best performance for an Oracle database

Thanks
0
 
zstafaAuthor Commented:
I have tested a bunch of components for database access in our environment on a complex query that returns about 9000 records. I ran each one 7 times and recorded the time from a button click to when the datasource was populated. here are the averages.

devartODAC - 12.039 seconds
AnyDAC - 12.059
SQLDirect - 12.201
DBGO - 14.713
AllRoundAutomations - 17.650
DBExpress(simpleDataSet) - 19.693
DBExpress(clientDataSet) - 25.855

and devartODAC has a BDE migration wizard. Still doing more testing, but I think I am norrowing it down.  Thanks to everyone.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.