Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Recommendation needed for good database for Delphi desktop app

I am creating a desktop application written in Delphi and I am looking for a database for my application.

I'm a bit overwhelmed by the number of available options. I'd really appreciate some recommendations and insights from other developers based on their experiences.

Critical factors

  • Low or no buyin cost.

  • No distribution fees.

  • Easily handle up to 35,000 records with no problems, ideally up to 100k.

  • Supports multiple tables (in this case up to 10)

  • Blob support (binary objects, images, etc.)

  • Can be distributed as part of the application install set. I.E. User does not have to someone else's website to download database installer.

  • Can be installed and configured by install set with minimal user interaction. My target userbase is not technically inclined.

  • Reasonably fast performance.

  • Support for standard SQL statements (or something reasonably close)

  • Support for multiple indexes

Less critical

  • Size of database installation
  • Size of database once installed on user's system.

Not critical, but nice if available

  • Multi-user support
  • Encryption
  • Scalability
like image 206
TheSteven Avatar asked Jul 27 '09 18:07

TheSteven


2 Answers

Firebird is an excellent choice. It meets all of your requirements, there are excellent administrative tools available for it (IBExpert, even the free version is the best tool I have ever used for a DB), and you can write your own user-defined functions in Delphi for special requirements your application might have. The support group at Yahoo groups seems to jump all over any support requests anyone submits. All in all, for my desktop application, I don't think I could do better.

like image 128
jrodenhi Avatar answered Sep 25 '22 08:09

jrodenhi


A good option would be to use Sqlite. There is a wrapper for Delphi 2009.

It will handle this size of DB very, very well, and is completely free to use and distribute, stable, robust, and supports pretty much all of your requirements.

like image 43
Reed Copsey Avatar answered Sep 24 '22 08:09

Reed Copsey