Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Choosing a DB... 1

Status
Not open for further replies.

ZoneVM

Programmer
Apr 7, 2005
30
US
Which DB to use...

--------------------------------------------------------------------------------

I am developing a desktop app for commercial purposes. I am using C++ Builder / Delphi. I need to use a database that:
1. plays well with C++ Builder - I plan on using ADO
2. has reasonable licensing - I will be bundling with the app
2a. is reasonably easy to bundle with the app
3. does well in a windows environment
4. reasonably small footprint - needs to run on medium performance desktops (512 MB+ RAM, 1-2 GHz Processor)
5. supports backups
6. will have 11 tables, all ints and text - no BLOBs
7. Although not required now, I anticipate a time when I will want to allow a small number of clients to connect to the database within a private network. Thus the database needs to allow up to 5 or so clients to connect and run primarily selects, but potentially updates as well.

I am currently using MS Access because the users I'm targeting already have Office. I'm not familiar with how MS reacts to developers interacting with apps already licensed by the customer (so info on this would help too). The main reason I want to switch from Access, though, is that I'm a little disappointed in the speed when the tables get large, even when I've done a pretty good job of DB design (in my humble opinion). Tables could be expected to get up to 200,000 rows or so.

Any advice people can give would be great.

Thanks
 
I use MySQL, and am very happy by it. It's very fast and very scalable, well able to handle huge databases. It doesn't use much memory; it will run very happily on a machine with far less than 512MB.

I know nothing about ADO, but it certainly operates well with C++Builder via BDE and ODBC. However, best of all is a direct no-middlemen connection (I use a very simple self-written API).

Installation is very straightforward - either use the Windows GUI installer, or script the installation (it only involves copying a directory, writing a config file, and installing the service).

There is a choice of licences for MySQL, free or commercial. Your application would most likely require a commercial licence. See for details.
 
Thanks, Tony. I'm looking into MySql, but it looks like they want quite a lot to be able to embed it in an app. The program I'm writing is a scheduling application, and I'm not wild about having to pay mySql for a license for every copy sold. The price on the website is more than I was planning on being able to price my application at. What's the consensus on Interbase? I know that it's Borland, and they advertize it as being very embeddable. Anyone worked with it?
 
OK, let's muddy things up a bit. In addition to MySQL, and Firebird (both are very good), I have also used MSSQL (doesn't fit the small footprint, though), Flash Filer ( and Advantage DB Server ( The latter is not a "free" DB but it includes its own VCL components that make it a snap to use.

James P. Cottingham
-----------------------------------------
I'm number 1,229!
I'm number 1,229!
 
Thanks. I'm taking a good hard look at firebird now, which I've heard nothing but good about, and they seem to have easy licensing. I'm connecting using DbExpress components now... is that the best way? Can I use the IBExpress components? Thanks to all!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top