加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

android 数据库工具类MyDbHelper

(2011-09-13 13:32:44)
标签:

it

分类: android学习
package com.tdd.db.util; 

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; 

public class MyDbHelper { 
    public static final String KEY_TITLE = "title";    //数据表字段 
    public static final String KEY_BODY = "body";    //数据表字段 
    public static final String KEY_ROWID = "_id";    //数据表字段 

    private DatabaseHelper mDbHelper;    //SQLiteOpenHelper实例对象 
    private SQLiteDatabase mDb;    //数据库实例对象 
    
    //数据表创建语句 
    private static final String DATABASE_CREATE  = "create table notes (_id integer primary key autoincrement, " 
                    + "title text not null, body text not null);"; 

    private static final String DATABASE_NAME = "data";    //数据库名 
    private static final String DATABASE_TABLE = "notes";    //数据库表名 
    private static final int DATABASE_VERSION = 2;    //数据库版本号 

    private final Context mCtx;    //上下文实例 

    private static class DatabaseHelper extends SQLiteOpenHelper {    //数据库辅助类 
        DatabaseHelper(Context context) { 
            super(context, DATABASE_NAME, null, DATABASE_VERSION); 
       
        @Override 
        public void onCreate(SQLiteDatabase db) { 
            db.execSQL(DATABASE_CREATE); 
       
        @Override 
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
            db.execSQL("DROP TABLE IF EXISTS notes"); 
            onCreate(db); 
       
   

     
    public MyDbHelper(Context ctx) { 
        this.mCtx = ctx; 
   

     
    public MyDbHelper open() throws SQLException { 
        mDbHelper = new DatabaseHelper(mCtx); 
        mDb = mDbHelper.getWritableDatabase(); 
        return this; 
   
    
    public void close() { 
        mDbHelper.close(); 
   


     
    public long createNote(String title, String body) { 
        ContentValues initialValues = new ContentValues(); 
        initialValues.put(KEY_TITLE, title); 
        initialValues.put(KEY_BODY, body); 
        return mDb.insert(DATABASE_TABLE, null, initialValues); 
   

     
    public boolean deleteNote(long rowId) { 
        return mDb.delete(DATABASE_TABLE, KEY_ROWID + "=" + rowId, null) > 0; 
   

     
    public Cursor fetchAllNotes() { 
        return mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE,KEY_BODY}, null, null, null, null, null); 
   

     
    public Cursor fetchNote(long rowId) throws SQLException { 

        Cursor mCursor = mDb.query(true, DATABASE_TABLE, new String[] {KEY_ROWID,KEY_TITLE, 
KEY_BODY}, KEY_ROWID + "=" + rowId, null, null, null, null, null); 
        if (mCursor != null) { 
            mCursor.moveToFirst(); 
       
        return mCursor; 
   

     
    public boolean updateNote(long rowId, String title, String body) { 
        ContentValues args = new ContentValues(); 
        args.put(KEY_TITLE, title); 
        args.put(KEY_BODY, body); 
        return mDb.update(DATABASE_TABLE, args, KEY_ROWID + "=" + rowId, null) > 0; 
   
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有