android database file not loading on real device, Basic Computer Science

Assignment Help:
i have an android app which uses a database file called question db which is stored in the assets file. I have tried a database example called android application development but for some reason it doesnt seem to work on the real device

Here is the database code

package net.learn2develop.Databases;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

public class DBAdapter {
public static final String KEY_ROWID = "_id";
public static final String KEY_NAME = "name";
public static final String KEY_EMAIL = "email";
private static final String TAG = "DBAdapter";

private static final String DATABASE_NAME = "MyDB";
private static final String DATABASE_TABLE = "contacts";
private static final int DATABASE_VERSION = 2;

private static final String DATABASE_CREATE =
"create table contacts (_id integer primary key autoincrement, "
+ "name text not null, email text not null);";

private final Context context;

private DatabaseHelper DBHelper;
private SQLiteDatabase db;

public DBAdapter(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}

private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db)
{
try {
db.execSQL(DATABASE_CREATE);
} catch (SQLException e) {
e.printStackTrace();
}
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS contacts");
onCreate(db);
}
}

//---opens the database---
public DBAdapter open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}

//---closes the database---
public void close()
{
DBHelper.close();
}

//---insert a contact into the database---
public long insertContact(String name, String email)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_NAME, name);
initialValues.put(KEY_EMAIL, email);
return db.insert(DATABASE_TABLE, null, initialValues);
}

//---deletes a particular contact---
public boolean deleteContact(long rowId)
{
return db.delete(DATABASE_TABLE, KEY_ROWID + "=" + rowId, null) > 0;
}

//---retrieves all the contacts---
public Cursor getAllContacts()
{
return db.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_NAME,
KEY_EMAIL}, null, null, null, null, null);
}

//---retrieves a particular contact---
public Cursor getContact(long rowId) throws SQLException
{
Cursor mCursor =
db.query(true, DATABASE_TABLE, new String[] {KEY_ROWID,
KEY_NAME, KEY_EMAIL}, KEY_ROWID + "=" + rowId, null,
null, null, null, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}

//---updates a contact---
public boolean updateContact(long rowId, String name, String email)
{
ContentValues args = new ContentValues();
args.put(KEY_NAME, name);
args.put(KEY_EMAIL, email);
return db.update(DATABASE_TABLE, args, KEY_ROWID + "=" + rowId, null) > 0;
}
}

I am wondering if its a problem with my phone


Related Discussions:- android database file not loading on real device

COMPUTER ORGANIZATION, Ask questio2. Define interrupt n #Minimum 100 words ...

Ask questio2. Define interrupt n #Minimum 100 words accepted#

Explain digital multiplexers, Problem 1 Perform the following conversio...

Problem 1 Perform the following conversion a. (ABE) 16 =() 2 b. (101011) 2 =() 10 2 Explain how full adder adds three bits 3 Explain digital multiplexers

Cache memory, Cache memory: To reduce the idle time of the CPU and inc...

Cache memory: To reduce the idle time of the CPU and increase the speed of processing, a fast memory can be used. This can be done by using a large size of main memory. But th

Memory management, Memory Management: The purpose of the memory mana...

Memory Management: The purpose of the memory management system is to load programs into memory in such a way as to give each program loaded  the memory that it requires for

What is blu-ray disk, Question 1 Explain the configuration steps involved ...

Question 1 Explain the configuration steps involved in CMOS setup Date and time Error halt Floppy drive A Halt on Hard disk C HDD Delay Keyboard Memory

Instructions for cycles: loop, They transfer the process flow, provisionall...

They transfer the process flow, provisionally or totally, to a destiny, replicating this action until the counter is zero. LOOP LOOPE LOOPNE LOOP INSTRUCTION reason: To produce a c

Cpu scheduler, Selects among the processes in memory which are ready to exe...

Selects among the processes in memory which are ready to execute & allocates the CPU to one of them CPU scheduling decisions can be taken place when a process: A. Terminates B. Swi

Write this ARM assemble language program, Programming Assignment CS252 Spri...

Programming Assignment CS252 Spring 2014 Write an ARM assembly language subroutine that performs according to the following specification (Caesar cypher). Given a mixed case al

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd