数据库相关

1.操作类

    GoDB {  
      
      private Database database;  
        private SQLiteDatabase db;  
      
        public GoosunDB(Context context) {  
            super();  
            database = new Database(context);  
        }  
      
        public GoosunDB open() throws SQLException {  
            db = database.getWritableDatabase();  
            return this;  
        }  
      
        public void close() {  
            db.close();  
        }  
          
        public Cursor search(int mark) {  
            Cursor cursor = db.query(TABLE_SEARCH, new String[] { COL_id, COL_code,  
                    COL_name }, "mark =" + mark, null, null, null, COL_date  
                    + " desc");  
            if (cursor != null) {  
                cursor.moveToFirst();  
            }  
            return cursor;  
        }  
      
        public Cursor searchByCode(String string) {  
            Cursor cursor = db.query(TABLE_SEARCH, new String[] { COL_id },  
                    "gid = " + "'" + string + "'", null, null, null, null);  
            if (cursor != null) {  
                cursor.moveToFirst();  
            }  
            return cursor;  
        }  
      
        public long insertEntity(SearchEntity entity) {  
              
            Cursor cursor = searchByCode(entity.getCode());  
      
            if (cursor != null && cursor.moveToFirst()) {  
                return updateEntity(entity);  
            } else {  
                ContentValues values = new ContentValues();  
                values.put(COL_code, entity.getCode());  
                values.put(COL_name, entity.getName());  
                values.put(COL_mark, entity.getMark());  
                values.put(COL_date, new Date().toString());  
                return db.insert(TABLE_SEARCH, null, values);  
            }  
        }  
      
        public long updateEntity(SearchEntity entity) {  
            ContentValues values = new ContentValues();  
            values.put(COL_date, new Date().toString());  
            return db.update(TABLE_SEARCH, values, "_id=?",  
                    new String[] { String.valueOf(entity.getId()) });  
        }  
      
        public long deleteEntity(int mark) {  
            return db.delete(TABLE_SEARCH, "mark=?",  
                    new String[] { String.valueOf(mark) });  
        }  
          
        private class Database extends SQLiteOpenHelper {  
      
            public Database(Context context) {  
                super(context, DATABASE_NAME, null, DATABASE_VERSION);  
                  
            }  
      
            @Override  
            public void onCreate(SQLiteDatabase db) {  
                  
                db.execSQL(TABLE_InsideLetter);  
                db.execSQL(TABLE_CREATE);  
            }  
      
            @Override  
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {  
                  
                db.execSQL("DROP TABLE IF EXISTS" + TABLE_SEARCH);  
                db.execSQL("DROP TABLE IF EXISTS" + TABLE_Inside);  
                onCreate(db);  
            }  
        }  
    }  

2.先显示数据库里已有的最后10条数据

    需求:  
    SQLite 数据库打开后从上到下是ABCDE1234567890  
    现在要每次从表的最后拿出5条ListView显示是: 67890  
    刷新操作后再拿出5条ListView显示是:1234567890  
    刷新操作后再拿出5条ListView显示是:ABCDE1234567890  
    以此类推  
    我要实现的功能就是类似聊天一样,下拉看以前的历史记录,一进来先显示数据库里已有的最后10条数据,数据库是动态增加的  
      
    第一步数据库操作:  
    select XXX from XXX limit 10 offset (select count(*) from XXX)-10;  
      
    第二步跳到的位置:  
    if (count < end) {  
    mListView.setSelection(0);  
    } else {  
    mListView.setSelection(end - start);  
    }  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值