Android : Database Adapter Design / Want To Access SQLite DB
Oct 16, 2010
I'm developing an Android application with a database. That database will have more than three tables. Now I'm working on a class called DBAdapter to access the SQLite Database. DBAdpater will have five methods for every table on database (insertEntry, removeEntry, getAllEntries, getEntry and updateEntry). So, if I have five table, DBApadter will have more than twenty-five methods. I think is so huge. How may DBAdapter classes should be?
View 1 Replies
Jul 27, 2009
I am writing an app that has a single database file with 3 tables ( AudioTable, PeopleMap, ImageTable) and am looking at 2 design alternatives:
1. A -single- database adapter (myDBAdapter.java) which uses a database helper class that extends SQLiteOpenHelper. The adapter class has separate methods for accessing and updating rows in each of the 3 tables. ie. insertAudio() insertPeople() insertImage()
2. 3 different database adapters for each table all using the same db file.. 1. audioDBAdapter.java, 2. peopleDBAdapter.java, 3. imageDBAdapter.java) Each adapter uses it's own db helper class (extending SQLiteOpenHelper)
While option 2 offers better encapsulation of the 3 classes (and corresponding data), I'm wondering if there couldbe a performance overhead or does the SQLiteOpenHelper implementation handle this without much overhead ?
Or is there some other way I can get better encapsulation with option 1. something similar to the way the Contacts Provider nicely allows for separate instances of Contacts.People, Contacts.Phones, Contacts.Settings, etc.
View 2 Replies
View Related
Aug 30, 2010
I have a general Android design question around data access. I have a number of activities in my application that need to access a SQLite database. In order to wrap up all data access logic in one place I have created a DatbaseHandler class that takes care of all data access logic. This class takes care of building up where clauses, calling the database and interrogating the resulting cursor to retrieve the query results and return them to the caller. The purpose of this class is to wrap all data access code in one place so that it can be easily managed and maintained as opposed to having data access logic scattered across all activities. Each activity that needs access to the database creates an instance of this DatabaseHandler class and passes it a reference of android.content.Context. The DatabaseHandler class then uses this Context object to call an underlying content provider as follows context_i.getContentResolver().query(...).
My data access logic (cursor handling logic to be specific) is not in the activity and so I cannot manage the cursors life cycle, therefore there is likely to be memory leaks.
My questions are as follows -
How can I (if its even possible) manage the cursors life cycle from outside an Activity? Should each activity even be creating an instance of this data handler class and passing an instance of Context to it? Perhaps my design approach is wrong and I should expose these data access functions as static methods that take an instance of the calling activity as a parameter. That way I could perform managed queries and let the activity take care of managing the cursors life cycle?
View 1 Replies
View Related
Jan 31, 2010
I'm searching information about how i can access a specific database that to not belong to me, and that is store in /data/data/com.... directory is it possible without root access? it it possible with root access, and how?
View 3 Replies
View Related
Oct 18, 2010
I use a sqlite database in my project. The stored data in it must not be available for the user to edit. As I've read here I saw that if you have root access you can alter sqlite database. The only solution would be to encrypt database content, but this would be time consuming for device. Any solution to prevent access to database ?
View 1 Replies
View Related
Dec 23, 2009
So far we have developed apps in android that create database on runtime. We like to know how can we access a pre-built or existing database/sqlite file in our android app?
View 1 Replies
View Related
Nov 14, 2011
i'm trying to access (read & write) from non-default (example 2nd table) table of a sqlite database which i created using sqlite database browser. but somehow, i cant seems to find the way to access it.
Code:
public class DatabaseHelper extends SQLiteOpenHelper {
private static String DB_PATH = "/data/data/com.sg/databases/";
private static String DB_NAME = "TestDatabase";
private SQLiteDatabase myDatabase;
[code]...
select data method works, but i can only select from table 1 and not table 2
View 4 Replies
View Related
Aug 13, 2010
I am trying to find the path for the android database files on Ubuntu 10.4, because I want to access with SQLite Browser. Someone can tell?
View 2 Replies
View Related
May 31, 2010
I would like to write a rather simple content application which displays a list of textual items (along with a small pic).I have a standard menu in which each menu item represents a different category of textual items (news, sports, leisure etc.).Pressing a menu item will display a list of textual items of this category.Now, having a separate ListActivity for each category seems like an overkill (or does it?)
Naturally, it makes much more sense to use one ListActivity and replace the data of its adapter when each category is loaded.My concern is when "back" is pressed. The adapter is loaded with items of the current category and now I need to display list of the previous category (and enable clicking on list items too)
Since I have only one activity - I thought of backup and load mechanism in onPause() and onResume() functions as well as making some distinction whether these function are invoked as a result of a "new" event (menu item selected) or by a "back" press.This seems very cumbersome for such a trivial usage.Am I missing something here?
View 1 Replies
View Related
Aug 23, 2010
I'm trying to deploy an application with an existing SQLite database.I've been reading though the examples that are posted but they are always missing some part of the class. I feel like I'm trying to bake muffins but no one told me to use baking powder.Can someone post a full database helper class for depoying an SQLite database on Android? Edit : Delete old code because it doesn't work.
View 2 Replies
View Related
Apr 12, 2010
I'm currently developing a Field-Service application that stores data in the local sqlite database on an android device. At some point, usually after completing the data collection rounds, the local sqlite db is to be synchronized to a remote sybase db on the server.Any suggestions as to how this could be achieved or engineered as a solution? Or even better, are there alternatives to synchronizing data in such an application?
View 1 Replies
View Related
Aug 26, 2009
I'm creating a map application on Android in which users share info. among them. I've., one user's marking on the map should be available to other users. What might be the best design for such type of communication?(like where can i host my database, file exchange format etc)
View 2 Replies
View Related
Jun 29, 2009
I been using custom adapters based on the BaseAdapter and I usually populate my data at the getView() funtion.
Now I'm trying to write my custom adapter for my database cursor which now will be based on a CursorAdapter.
I'm getting confused where I should do the populating work? Along with how do I implement my inflating and populating "smart/efficient code based on RomainGuy presentation."
View 8 Replies
View Related
May 13, 2009
in Android code, It is a very strange concept to define the APN type (APN_TYPE_MMS). The reason are: 1) APN only is an access pointer, it haven't any special attribute for MMS or other things. 2) Only Application care the APN name, since different APN will provide different service from operator. for example, operation may provide Email/MMS/GPS/.... service on different APN. 3) Android only define one type APN_TYPE_MMS, this will limit other top application usage. Any one can answer me why Android design this way? If google have strong reason for such design, I hope add other user defined type like APN_TYPE_USER1 APN_TYPE_USER2 then top application can set his property to use its APN other than APN_TYPE_MMS
View 2 Replies
View Related
Feb 13, 2009
I'm new to Android, I just finished the Notepad Tutorials, where we can create SQLite Databases to save notes. So I wanted to know if it was possible to "import" my own SQLite database (not created with my App but with a 3rd-party software) to my project, and if the answer is yes, where should I save my SQLite databse and how can I have access to it.
View 9 Replies
View Related
Mar 25, 2010
I'm doing a application that will use a database with serialized object. The objects will be already serialized and the user will just display things. On a PC I would just make an XML but with android I'm not sure. Can I make an XML and "unpack" it when the user launch the application for the first time or should I do something else?
View 3 Replies
View Related
Mar 5, 2010
I put my database field in "assets" folder. And use the code from this blog to copy the database to "/data/data/my_packname/databases/", (This copy code i run it in the onCreate() method when i run this app) then use select * from ... to get data. But it gives me the exception: no such table. Someone told me that if i am attempting to copy the file in SQLiteOpenHelper's onCreate(), it's too late. So the copy file code can not copy the complete file. So i need to use adb or ddms to pull the database first? So, Anyone can teach me how to use my own databse?
View 3 Replies
View Related
Nov 18, 2009
I have a class like class My data{ String name; int data; Location[] locality.
View 8 Replies
View Related
May 23, 2009
I am new to android and I have a problem in creating a database.
public class database extends ListActivity {
/** Called when the activity is first created. */
private final String MY_DATABASE_NAME = "myCoolUserDB.db";
private final String MY_DATABASE_TABLE = "t_Users";
Context c;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ArrayList<String> results = new ArrayList<String>();
setContentView(R.layout.main);
SQLiteDatabase mydb=null;
try
{
mydb.openOrCreateDatabase(MY_DATABASE_NAME, null);
} catch(Exception e){}
}}
When I run this code it throws a run time exception.
View 4 Replies
View Related
Mar 23, 2010
How do I delete the sqlite database exists in my android? There is a db behind my android qro and delete the same
View 4 Replies
View Related
Aug 2, 2010
public void delete(String id, String name, String phonenumber, String time, String message)
{
String[] args={id};
getWritableDatabase().delete("texts", "_ID=?", args);
}
It works fine, and deletes the specified row. However, I also want to implement it so that I can delete the most recent (earliest date) entry in the database, which should be at the top of the table. I know I can do this by altering the last 2 parameters of delete, but I cannot figure out what to change them to.
View 1 Replies
View Related
Jan 25, 2010
Is possible update the records from SQLite from my Android Application1 from other Application2 Android
View 4 Replies
View Related
Jul 31, 2009
Is there any UI can connect to SQLite database? I hope that I can read the data without writing code.is there any method can make it happened?
View 6 Replies
View Related
Jul 22, 2010
Is it really necessary to close an SQLite database that your activity has opened (database is in local memory or on SD card)? I would think it would be good practice, but I noticed that the Android samples such as the Notepad tutorial and SearchableDictionary sample do not do this. I've also seen sample code where the database is consistently opened, read from, and closed, but that would seem to add unnecessary overhead.
View 5 Replies
View Related
Jun 2, 2010
I successfully created the Database and inserted a row however I cannot Query it for some reason. My Droid crashes everytime.
CODE:...........
I get this exception
No such column: value: , while compiling: SELECT DISTINCT value FROM mainTable
View 2 Replies
View Related
Jun 4, 2010
I'm looking for a very simple ORM framework working on Android for sqlite. I've been testing activeAndroid but none of the example could ever build on Eclipse. By the way, how do guys implements a "many to many" relationship in sqlite for android ? How do you reflect the cascade regarding deletion of rows and guarantee the database integrity?
View 2 Replies
View Related
Jul 14, 2009
How to drop a database in Android SDK?
Did not see any methods in android.database.sqlite.SQLiteOpenHelper or android.database.sqlite.SQLiteDatabase classes.
View 10 Replies
View Related
Jun 10, 2010
I am able to create, write and read an SQLite Database in my Android App. I have a copy of the Database that is fully populated with data, and I want to get that data into the App's Database. Is it possible to access my populated database from inside my App? Or can I at least create a copy of the populated database and then use that copy? Or do I need to do a .dump and put all the inserts into the Android code?
View 1 Replies
View Related
Mar 16, 2010
I have a sqlite database, and i put this file in "assets" folder. The code like below, Pls help and tell what's wrong in this code, How to use my own sqlite database.
CODE:.............
The error message:
CODE:.................
View 1 Replies
View Related
Aug 17, 2010
I need to parse a fairly large XML file (varying between about a hundred kilobytes and several hundred kilobytes), which I'm doing using Xml#parse(String, ContentHandler). I'm currently testing this with a 152KB file.During parsing, I also insert the data in an SQLite database using calls similar to the following: getWritableDatabase().insert(TABLE_NAME, "_id", values). All of this together takes about 80 seconds for the 152KB test file (which comes down to inserting roughly 200 rows).When I comment out all insert statements (but leave in everything else, such as creating ContentValues etc.) the same file takes only 23 seconds.Is it normal for the database operations to have such a big overhead? Can I do anything about that?
View 2 Replies
View Related