I’m fairly new to Android, I’m trying to create a rather complex app (something more advanced than notepad or task reminder), with some serious underlying data model. I’m using Eclipse with the Android SDK plugin, everything is working well. But what should I use for database design?
I’ve gone through some sample apps that create databases programmatically, but those only contained a single table with a few columns. What I want to create is a database with multiple tables, private key/foreign key constraints, enumerations and all that jazz. If I had to do this manually, I’d probably go grey by the time I’m finished. I’ve designed quite a few databases in my time, be it in MS Visual Studio, MS SQL Server Management Studio, Oracle DB Designer and similar tools.
I realize that SQLite doesn’t have some fancy shmancy DB server where I could run SQL scripts and it would create the database and keep it alive. I know it’s all part of the application and the app itself must create and maintain its database.
Is there any visual DB design tool, which I could maybe integrate into Eclipse (not necessary) and which would, I don’t know, generate the database creation code, so that the database would be usable in my application?
Thanks in advance.
PS: I’m aware of the limitations of the Android devices. The app will have a complex data structure, but it’s not intended to hold that much data. The purpose of the exercise is to test what can be done with the platform and improve my skills by attempting to create something meaningful.
I’ve been using SQLite Database Browser for the past month, I’ve found it to be a really nice tool. You should try it out:
I use the SQLite editor from Nivacat (Navicat SQLite) for developing my android data bases on Mac OS X (also available for Windows and Linux).
SQLite addon for Firefox is quite nice.
If you’re on Mac OSX I would recommend Base.
SQLiteSpy, it is a bit better than SQLite Database Browser, also free.