Hi all can anybody say why I ought to make use of an SQLite database for my mobile application? What are the databases rather will be able to use?

SQLite database is what you want :-)

smashing magazine published a pleasant article about this a week ago


Much more about the SQLite specific:


It's generally recognized that SQLite is the greatest database platform for Android since it is lightweight character gives itself nicely to mobile products where processing energy and memory are restricted.

That's not saying that you simply could not get it done, in the finish during the day it's Java. You can write your personal, or find free code, that will allow you to use another database. The issue there's the phone would also need to have a database daemon to handle demands whereas in SQLite the database is really a file saved on the telephone and thus may be easily utilized in Java.

In the finish during the day it might be silly to operate a MySQL daemon for instance on the phone because I greatly doubt it'd possess the memory to deal. You would be far better of becoming accustomed to SQLite since it is a really flexible and popular database platform.

An alternative choice is Berkeley DB, which like SQLite is really a lightweight, fast, reliable database library. You've got a couple of different choices of the best way to use Berkeley DB on Android:

  1. Use Berkeley DB through the SQL API being an upgrade/alternative for SQLite. The BDB SQL API is totally SQLite compatible, so that your SQLite application should have the ability to become using Berkeley DB effortlessly. Why would you need to use Berkeley DB rather than SQLite? On Android, it's mainly about concurrency. BDB supports concurrent read procedures. In case your Android application needs that, then BDB is a superb option. On non-Android platforms, BDB scalability, performance, ' and enterprise Support allow it to be a stylish alternative for programs either using SQLite already or thinking about utilizing it. There is a helpful discussion on OTN about while using BDB SQL API on Android here.
  2. Use Berkeley DB through the key-value API like a simple, local data store.
  3. Use Berkeley DB Java Edition through the key-value, Java Collections or Direct Persistence Layer APIs to handle application data inside a pure Java atmosphere. Here's a fascinating Blog entry about using Berkeley DB JE on Android.

Disclaimer: I am the merchandise Manager for Berkeley DB. Nevertheless, we believe that SQLite is a superb product (we are area of the SQLite Consortium) and we are pleased to see people implementing and taking advantage of it. You will find situations where Berkeley DB might be a better option, hence my suggestion here.

As pointed out in another answer, you are able to mix-compile Berkeley DB for Android and employ the Java Bindings, including it as being an .so native library in your .apk (arrives packed at ~710k). There's one step-by-step guide here (because it requires minor fine-tuning).