Solved

Free BDE alternative

Posted on 2003-11-20
7
908 Views
Last Modified: 2013-11-23
Hi.
I'm looking for a *free* alternative for BDE so that all the database access mechanism at a final stage is self-contained in one exe, no additional installations, drivers, etc. Ideally, the database should be kept in one big file, possibly with encryption, crc checks, etc. It also should be compatible with standart Delphi data avare controls.
0
Comment
Question by:cuuu
7 Comments
 
LVL 7

Assisted Solution

by:jconde
jconde earned 20 total points
ID: 9792033
Hi!

This will help you out a lot.

http://www.kylecordes.com/bag/index.html

more specific:

http://www.kylecordes.com/bag/list.html

Some of them are free, some aren't ... some of them are TDataSet descendants for specific databases, but over all its a very complete list.
0
 
LVL 5

Assisted Solution

by:DeerBear
DeerBear earned 20 total points
ID: 9795763
Hi,

I've always wondered why someone would want a BDE-alternative <g>.

The point isn't in the concept itself, but in its implementations.

Having a general-purpouse Database Access Mechanism means by default
less power and less performance, because it must tolerate several different
database systems.

If you really want to have a "general" database framework, I'd better see an
interface based system for Delphi components.

You can plan the interfaces to be the most possible "general" and then
implement them in components which access a SPECIFIC database system.

There's no fault in having an "IQuery" interface, while it would be very complicated to
have a "TQuery" component for all databases.

My 2c,

Andrew
0
 
LVL 17

Assisted Solution

by:Wim ten Brink
Wim ten Brink earned 20 total points
ID: 9796354
Keep it simple and take a look at ADO. If all your users are using Windows XP or perhaps W2K then ADO should not be a real problem. ADO seems to be the standard database system these days, on Windows systems.
For older Windows version you can always install the required ADO components, if need be. But the user might already have them if he's using MS Office.
0
Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

 
LVL 1

Assisted Solution

by:FrankTheRat
FrankTheRat earned 20 total points
ID: 9797522
Thought I might contribute an alternative, just to be different!

Try Firebird. This is the Opensource (i.e. free) version of Interbase. It's small, fast, reliable, and you can connect to it without the BDE, ADO, ODBC etc. with standard IB components.

See http://www.firebirdsql.org/

FrankTheRat.
0
 
LVL 1

Accepted Solution

by:
FeralCTO earned 45 total points
ID: 9800552
You can get everything you're looking for (except the *free*) with TinyDB (www.tinydb.com). It's not free although it is quite inexpensive at $89 with source code. The following is right off their web site:

It provides access to a flat file in its own format without BDE, and doesn't need any installation and configuration. With TinyDB engine, all data can be stored in only one database file. TinyDB engine is an ideal BDE replacement for small database applications in Delphi and C++Builder.

Inherited from TDataSet, supports all visual DB-aware components;
Without BDE, and no DLL, no OCX;
All data in ONE database file;
Supports BLOB data Compression;
Supports database Encryption, and CRC32 protection;
Supports In-memory database;
Supports Multi-indexes, Master-Detail relationship;
Maximum records quantity over 100,000;
TinyDB Desktop tool, detailed manual, and abundant samples;
0
 

Author Comment

by:cuuu
ID: 9802144
I am experimenting with TinyDB right now, and $89 really isn't such a big problem.
One thing distracts me - the word "Tiny" in its title. What if i had 10 tables with several K of records all related to each other? In documentation it's mentioned that this db can handle more than 100'000 records but, emm, what  with performance? :)
So I think I'll give it some crash tests ;)
Since this db cannot handle SQL requests (as for me, well maybe it can and i'm just dumb :/ ), it may actually not be possible to bring all these complex relations to life.
DeerBear - i guess i didn't make myself clear - I am definitely not looking for another bloated db interface like BDE, or, even worse, ADO (lots of users will be forced to update their DCOM, ADO and whatnot, in this case it's unacceptable). I'm looking for a lightweight DB system with no additional drivers and no specific requirements for environment. I hope i'm not dreaming :)
0
 
LVL 1

Expert Comment

by:FeralCTO
ID: 9803119
Another one that you might want to look at is the Advantage Database Server (ADS). I didn't mention it before because it didn't meet all of your criteria. Specifically, the data is stored in more than one file and ADS doesn't compile into the program. However, it has several attractive features.

* It's *free* for single user use.
* It supports a subset of ANSI-92 SQL.
* If you ever needed to scale up, there's a client/server version ($)

I've used it and thought it worked quite well. www.advantagedatabase.com 
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
code issue 8 129
Using idhttp to login to instagram 2 89
Create a path if not exists 7 77
SUM 2 INTEGER ARRAYS INTO 1 10 100
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…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

776 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