Android Open Source - Smartlab Database Adapter






From Project

Back to project page Smartlab.

License

The source code is released under:

Apache License

If you think the Android project Smartlab listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package ir.smartlab.personlist.data;
//from   w  ww.ja  v  a  2s.c  o  m
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

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

public class DatabaseAdapter {
  
  private final String TABLE_NAME = "TBL_PERSONS";
  private final String COL_ID = "_ID";
  private final String COL_NAME = "_NAME";
  private final String COL_FAMILY = "_FAMILY";
  private final String COL_BIRTHDATE = "_BIRTHDATE";
  
  SQLiteDatabase database;
  
  public DatabaseAdapter(Context context) {
    MyDatabaseOpenHelper openHelper = new MyDatabaseOpenHelper(context, "persons.db", null, 1);
    database = openHelper.getWritableDatabase();
  }
  
  public List<Person> getPersons() {
    List<Person> persons = null;
    String sql = "select * from " + TABLE_NAME;
    Cursor c = null;
    try {
      c = database.rawQuery(sql, null);
      if( c.moveToFirst() ) {
        persons = new ArrayList<Person>();
        do {
          Person p = extractPerson(c);
          persons.add(p);
        } while(c.moveToNext());
      }
    } catch (Exception e) {
      Log.d("DATABASE", e.getMessage());
    } finally {
      try {
        if( c != null && !c.isClosed()) {
          c.close();
        }
      } catch (Exception e2) {
      }
    }
    return persons;
  }
  
  private Person extractPerson(Cursor c) {
    Person person = new Person();
    person.setId(c.getLong(c.getColumnIndex(COL_ID)));
    person.setName(c.getString(c.getColumnIndex(COL_NAME)));
    person.setFamily(c.getString(c.getColumnIndex(COL_FAMILY)));
    person.setBirthdate(new Date(c.getLong(c.getColumnIndex(COL_BIRTHDATE))));
    return person;
  }

  public long insertPerson(Person person) {
    ContentValues cv = new ContentValues();
    cv.put(COL_NAME, person.getName());
    cv.put(COL_FAMILY, person.getFamily());
    cv.put(COL_BIRTHDATE, person.getBirthdate().getTime());
    long id = database.insert(TABLE_NAME, null, cv); 
    return id;
  }
  
  public int deletePerson(long id) {
    return database.delete(TABLE_NAME, COL_ID + "=?", new String[] {String.valueOf(id)}); 
  }
  
  public int updatePerson(Person person) {
    ContentValues cv = new ContentValues();
    cv.put(COL_NAME, person.getName());
    cv.put(COL_FAMILY, person.getFamily());
    cv.put(COL_BIRTHDATE, person.getBirthdate().getTime());
    return database.update(TABLE_NAME, cv, COL_ID + "=?", new String[] {String.valueOf(person.getId())});
  }
  
  public class MyDatabaseOpenHelper extends SQLiteOpenHelper {

    public MyDatabaseOpenHelper(Context context, String name, CursorFactory factory, int version) {
      super(context, name, factory, version);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
      String sql = String.format("create table %s (%s integer primary key, %s text, %s text, %s integer)", TABLE_NAME, COL_ID, COL_NAME, COL_FAMILY, COL_BIRTHDATE);
      db.execSQL(sql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
    }
    
  }

}




Java Source Code List

com.example.activitylifecycletest.MainActivity.java
com.example.activitylifecycletest.SecondActivity.java
com.example.analyticstest.MainActivity.java
com.example.androidgraphic.MainActivity.java
com.example.animationexample.MainActivity.java
com.example.animationexample.SecondActivity.java
com.example.compassview.CompassView.java
com.example.compassview.MainActivity.java
com.example.databasetest.BookListActivity.java
com.example.databasetest.MainActivity.java
com.example.databasetest.data.Book.java
com.example.databasetest.data.DatabaseAdapter.java
com.example.fragmentexample.BookDetailsFragment.java
com.example.fragmentexample.BookListFragment.java
com.example.fragmentexample.MainActivity.java
com.example.fragmentexample.data.BookListAdapter.java
com.example.fragmentexample.data.Book.java
com.example.fragmentexample.data.DatabaseAdapter.java
com.example.listviewexample.MainActivity.java
com.example.listviewexample.data.BookListAdapter.java
com.example.listviewexample.data.Book.java
com.example.listviewexample.data.DatabaseAdapter.java
com.example.persiandatepicker.MainActivity.java
com.example.persiandatepicker.PersianDatePicker.java
com.example.preferencesexample.MainActivity.java
com.example.sqlitetestapp.MainActivity.java
com.example.sqlitetestapp.PersonListActivity.java
com.example.sqlitetestapp.data.DatabaseAdapter.java
com.example.sqlitetestapp.data.PersonListAdapter.java
com.example.sqlitetestapp.data.model.Person.java
com.example.viewpagerexample.MainActivity.java
ir.smartlab.android.broadcast.MainActivity.java
ir.smartlab.android.broadcast.WifiStateChangeReceiver.java
ir.smartlab.android.downloadasynctask.MainActivity.java
ir.smartlab.android.helloworld.MainActivity.java
ir.smartlab.audiorecord.MainActivity.java
ir.smartlab.audiotest.MainActivity.java
ir.smartlab.camera.MainActivity.java
ir.smartlab.captureimage.MainActivity.java
ir.smartlab.customaudiorecorder.MainActivity.java
ir.smartlab.java.ch04.firstcup.FisrtCup.java
ir.smartlab.java.ch05.circlesample.Circle.java
ir.smartlab.java.ch05.circlesample.Main.java
ir.smartlab.java.ch06.simplecalculator.SimpleCalculator.java
ir.smartlab.java.ch06.variablescope.VariableScopeTest.java
ir.smartlab.java.persiancalendar.Main.java
ir.smartlab.musicplayer.MainActivity.java
ir.smartlab.musicplayerservice.MainActivity.java
ir.smartlab.musicplayerservice.PlayerService.java
ir.smartlab.personlist.MainActivity.java
ir.smartlab.personlist.PersonListActivity.java
ir.smartlab.personlist.data.DatabaseAdapter.java
ir.smartlab.personlist.data.PersonListAdapter.java
ir.smartlab.personlist.data.Person.java