Free portable database [closed]
Asked Answered
H

8

25

Hi I am developing desktop portable free application and I`m looking for portable database:

  • free
  • without install
  • up to 20K records
  • standalone application
  • supports encryption (optional)
  • SQL92 spec

thanks for advice

can you write some advantages and disadvangtages?

Haymaker answered 17/2, 2009 at 16:30 Comment(2)
You should specify language - your db is likely going to tightly couple with your program.Adkison
AFAIK, Java is the only widespread language with a penalty for using C libraries. (can anybody confirm/deny if .net has the same problem?)Ambrogio
A
58

SQLite:

self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.

-Adam

Adkison answered 17/2, 2009 at 16:31 Comment(3)
This is what you are looking for.Housecoat
Yes, I agree. You want SQLite. I compared it against SEVERAL other free and commercial databases. This one (although not perfect) was the best, and it is free.Cykana
+1 for SQLite. I used it with a C# project and it was rock solid.Sapsago
S
14

Firebird embedded

About:

Firebird is an open source relational database offering many ANSI SQL-99 features that runs on Linux, Windows, and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, powerful language support for stored procedures and triggers.

Swish answered 17/2, 2009 at 16:41 Comment(0)
M
6

If you're working in Java, HSQLDB might be a good fit. Otherwise, SQLite.

Mooch answered 17/2, 2009 at 16:55 Comment(0)
K
3

SQL Server Compact

Kalmick answered 17/2, 2009 at 16:36 Comment(2)
Additionally, the redistribution terms and conditions of SQL Server Compact explicitly forbid the GPL and many other licenses commonly used for free software, which is very problematic, and you may not "work around any technical limitations in the software", which is bullshit when it comes to software programming.Weeper
@EHaskins: 1) I never run windows on my systems, pirated or not. 2) I have checked the license again and I now realize I have misread the license somewhat, however it still does not allow the use of the GPL. 3) You are not allowed to allow people to run it on a system that does not have a valid windows license. (ie, you would have to categorically deny anything that would allow someone to run it on Linux or Mac OS X, and probably not be able to use the WINE project). 4) I am still disturbed that as an engineer, you are not allowed to "work around any technical limitations in the software".Weeper
F
2

Not sure it meets the no install requirement but if you need more than SQLite check Apache Derby.

Futilitarian answered 17/2, 2009 at 16:40 Comment(0)
S
2

Depending on your problem, you may consider Ms Access.

You can connect to Access database through Jet engine which is installed on Windows XP and newer.

Since v2002 it is SQL 92 compliant (as Microsoft claims).

Swish answered 17/2, 2009 at 18:47 Comment(4)
You can build app using MsAccess as datastore and then ship MDB file with your app. Use OLEDB or ODBC to access it from whichever development environment. No need to install full MsAccess on client. Or is there any special meaning in portable that I don't get?Swish
The Jet database engine is present on Windows whether or not you have Access. It's part of MDAC.Fikes
C code for dealing with .dbf files (those of Dbase II/Clipper/Fox fame) is around 200 lines long. but i'd rather use textfiles than .dbfAmbrogio
+1 for Access sorry guys who bitch (and love to) but this is a VERY good choice for a number of reasons.. no install etc.. not perfect, not the best answer (JET engine), but a waaaaay under-used alternativeFlee
C
2

Tokyo Cabinet would be a good candidate, except it isn't relational (so no SQL).
Given you don't have so many records, maybe a full relational database is overkill for your needs. Or not, it depends on your application, of course.

Canaletto answered 17/2, 2009 at 18:49 Comment(2)
TC is certainly interesting, especially since it has so many different formats, each optimised for a different use. no relational, thought.Ambrogio
I am sure lot of applications using relational databases can do fine with a plain database, actually... :-) That's why I give this link anyway.Canaletto
C
0

Edit: Ooops, apparently I meant SQL Compact, not express

Clannish answered 17/2, 2009 at 16:32 Comment(4)
Neither of those meet his criteria.Supplementary
SQL Express can be done without an installClannish
compact is embeddable, express is not.Hauberk
thanks mausch, I misread that a while ago and had been thinking it was express for a whileClannish

© 2022 - 2024 — McMap. All rights reserved.