如何在android中实现从sqlite db中选择数据的常用方法

时间:2014-03-25 07:41:28

标签: android

我尝试为KIOSK实现示例apk。我有很多表。所以我想为所有数据库任务(选择,插入,更新,删除)实现通用方法。现在我在这样的一个类中创建select方法..

public List<OrgcodeInfo> OrgList(String sql) {
    cursor = null;
    try {
        cursor = mDb.rawQuery(sql, null);
        _listOrgcodeInfo = new ArrayList<OrgcodeInfo>();

        while (cursor.moveToNext()) {
            _OrgcodeInfo = new OrgcodeInfo();
            _OrgcodeInfo.setOrgcode(cursor.getString(cursor
                    .getColumnIndex("Org Code")));
            _OrgcodeInfo.setOrgName(cursor.getString(cursor
                    .getColumnIndex("Shop Name")));
            _listOrgcodeInfo.add(_OrgcodeInfo);
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        cursor.close();
        mDb.close();
    }
    return _listOrgcodeInfo;
}

这对于小任务来说没问题。但是我有很多数据事务任务。我为每个表创建对象作为OrgcodeInfo并且每次都设置数据。 我怎么能这样做。

1 个答案:

答案 0 :(得分:0)

public class DBconnection {

SQLiteDatabase database;

public DBconnection(Context context){
    try {
        // TODO Auto-generated constructor stub
        database=context.openOrCreateDatabase("hslogin",SQLiteDatabase.OPEN_READWRITE,null);
        database.execSQL("create table if not exists login(username varchar(40) PRIMARY KEY,password varchar(40))");
        database.execSQL("create table if not exists instructions(sourcedestination varchar(100) ,instruction varchar(80),lattitude varchar(100),longitude varchar(100))");
    } catch (Exception e) {
        // TODO: handle exception
    }

}


public int putData(String sql) {

    int i;
    try {
        database.execSQL(sql); 
         i=1;
    } catch (Exception e) {
         i=0;
        // TODO: handle exception
    }
    return i;

}

public Cursor getData(String sql) {     
    Cursor cursor=null;
    try {
    cursor=database.rawQuery(sql, null);            
    } catch (Exception e) {
        // TODO: handle exception
    }

     return cursor;
}}