Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.blogspot.dbh4ck.sqlite_demo_db;
- import android.content.ContentValues;
- import android.content.Context;
- import android.database.Cursor;
- import android.database.DatabaseErrorHandler;
- import android.database.sqlite.SQLiteDatabase;
- import android.database.sqlite.SQLiteOpenHelper;
- import android.util.Log;
- import java.util.ArrayList;
- /**
- * Created by DB on 08-03-2016.
- */
- public class DatabaseHandler extends SQLiteOpenHelper {
- // Database Name
- private static final String DATABASE_NAME = "ContactsManagerDB";
- // Database Version
- private static final int DATABASE_VERSION = 1;
- // Table Name
- private static final String TABLE_CONTACTS = "contacts";
- // Table Columns Name
- private static final String KEY_ID = "id";
- private static final String KEY_NAME = "name";
- private static final String KEY_EMAIL = "email";
- // private static final String KEY_IMAGE = "image";
- private final ArrayList<Contact> contact_list = new ArrayList<Contact>();
- public DatabaseHandler(Context context) {
- super(context, DATABASE_NAME, null, DATABASE_VERSION);
- }
- public DatabaseHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version, DatabaseErrorHandler errorHandler) {
- super(context, name, factory, version, errorHandler);
- }
- @Override
- public void onCreate(SQLiteDatabase db) {
- String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "("
- + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
- + KEY_EMAIL + " TEXT " + ")";
- db.execSQL(CREATE_CONTACTS_TABLE);
- }
- @Override
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- // Drop older Table if already Exist
- db.execSQL("DROP TABLE IF EXISTS " + TABLE_CONTACTS);
- // Create tables again
- onCreate(db);
- }
- // Adding new contact
- public void Add_Contact(Contact contact) {
- SQLiteDatabase db = this.getWritableDatabase();
- ContentValues values = new ContentValues();
- values.put(KEY_NAME, contact.getName()); // Name
- values.put(KEY_EMAIL, contact.getEmail()); // Email
- // Inserting Row
- db.insert(TABLE_CONTACTS, null, values);
- db.close(); // Close Database Connection
- }
- // Getting single contact
- Contact Get_Contact(int id) {
- SQLiteDatabase db = this.getReadableDatabase();
- Cursor cursor = db.query(TABLE_CONTACTS, new String[] { KEY_ID, KEY_NAME, KEY_EMAIL }, KEY_ID + "=?", new String[] { String.valueOf(id) }, null, null, null, null);
- if (cursor != null)
- cursor.moveToFirst();
- Contact contact = new Contact(Integer.parseInt(cursor.getString(0)), cursor.getString(1), cursor.getString(2));
- // return contact
- cursor.close();
- db.close();
- return contact;
- }
- // Getting All Contacts
- public ArrayList<Contact> Get_Contacts() {
- try {
- contact_list.clear();
- // Select All Query
- String selectQuery = "SELECT * FROM " + TABLE_CONTACTS;
- SQLiteDatabase db = this.getWritableDatabase();
- Cursor cursor = db.rawQuery(selectQuery, null);
- // looping through all rows and adding to list
- if (cursor.moveToFirst()) {
- do {
- Contact contact = new Contact();
- contact.setID(Integer.parseInt(cursor.getString(0)));
- contact.setName(cursor.getString(1));
- contact.setEmail(cursor.getString(2));
- // contact.setImage(cursor.getBlob(3));
- // Adding contact to list
- contact_list.add(contact);
- } while (cursor.moveToNext());
- }
- // return contact list
- cursor.close();
- db.close();
- return contact_list;
- } catch (Exception e) {
- // TODO: handle exception
- Log.e("all_contact", "" + e);
- }
- return contact_list;
- }
- // Updating single contact
- public int Update_Contact(Contact contact) {
- SQLiteDatabase db = this.getWritableDatabase();
- ContentValues values = new ContentValues();
- values.put(KEY_NAME, contact.getName());
- values.put(KEY_EMAIL, contact.getEmail());
- // values.put(KEY_IMAGE, contact.getImage());
- // updating row
- return db.update(TABLE_CONTACTS, values, KEY_ID + " = ?",
- new String[] { String.valueOf(contact.getID()) });
- }
- // Deleting single contact
- public void Delete_Contact(int id) {
- SQLiteDatabase db = this.getWritableDatabase();
- db.delete(TABLE_CONTACTS, KEY_ID + " = ?",
- new String[] { String.valueOf(id) });
- db.close();
- }
- // Getting contacts Count
- public int Get_Total_Contacts() {
- String countQuery = "SELECT * FROM " + TABLE_CONTACTS;
- SQLiteDatabase db = this.getReadableDatabase();
- Cursor cursor = db.rawQuery(countQuery, null);
- cursor.close();
- // return count
- return cursor.getCount();
- }
- }
Add Comment
Please, Sign In to add comment