Android中SQLite数据库使用方法总结_第1页
Android中SQLite数据库使用方法总结_第2页
Android中SQLite数据库使用方法总结_第3页
Android中SQLite数据库使用方法总结_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Android SQLiteOpe nH elper 使用方法Android平台提供给我们一个数据库辅助类来创建或打开数据库,要使用平台提供的数据库操作功能,我们所写的数据库操作类必须继承于android.database.sqlite.SQLiteOpenHelper类。public class DBHelper extends SQLiteOpenHelperDBHelp类编写顺序:1、创建构造函数。Public DBHelper(Contet context) /初始化时创建数据库,参数依次为上下文环境、数据库名称、游标工厂(null )、数据库版本Super(context, DBNA

2、ME, null, 1);2、重写onCreate(SQLiteDatabase db):当数据库被首次创建时执行该方法,一般将创建表等初始化操作在该方法中执行。3、 重写 onUpgrade(SQLiteDatabse dv, int oldVersion,int new Version):当打开数据库时传入的 版本号与当前的版本号不同时会调用该方法。*除了上述两个必须要实现的方法外,还可以选择性地实现 onOpen方法,该方法会在每次打开数据库时被调用。4、最后编写数据库增、删、改、查方法。SQLiteOpenHelper类的基本用法是:当需要创建或打开一个数据库并获得数据库对象时,首先根

3、据 指定的文件名创建一个辅助对象,然后调用该对象的 getWritableDatabase 或getReadableDatabase 方法获得 SQLiteDatabase 对象。调用getReadableDatabase 方法返回的 并不总 是只读数据库对象,一般 来说该 方法和 getWriteableDatabase方法的返回情况相同,只有在数据库仅开放只读权限或磁盘已满时才会返回一个只读的数据库对象。android SQLiteOpenHelper使用示例,DBHelper中包含基本的增删改查方法,在实际编码过程中可根据项目数据结构及软件结构设计更为方便的数据操作方法。DBHelper

4、 Java 代码package com.oa.ike.rssreader;import android.content.Context; import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.database.sqlite.SQLiteDatabase.CursorFactory;/声明数据库操作类public class DBHelper extends SQLiteOpenHelper/调用父类构造器public DBHelpe

5、r(Context context, String name, CursorFactory factory, int version) super(context, name, factory, version);/*当数据库首次创建时执行该方法,一般将创建表等初始化操作放在该方法中执行*重写onCreate方法,调用execSQL方法创建表Overridepublic void onCreate(SQLiteDatabase db) db.execSQL(create table if not exists hero_info(+ id integer primary key,+ name

6、varchar,+ level integer); |/当打开数据库时传入的版本号与当前的版本号不同时会调用该方法/重写onUpgrade方法,编写数据库版本更新后的一些处理代码Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) /TODO:数据库版本更新处理代码/查询public Cursor select()SQLiteDatabase db = this.getReadableDatabase();Cursor cursor = db.query(TABLE_NAME, null

7、, null, null, null, null, null); return cursor;db.close();/删除public void delete(int id)SQLiteDatabase db = this.getWritableDatabase();String where = DataField.ID + = ?;String whereValue = Integer.toString(id);Log.v(delete data, where+ +id); db.delete(TABLE_NAME, where, whereValue); db.close();/修改pub

8、lic void update(int id, String title,String link,String des)SQLiteDatabase db = this.getWritableDatabase();String where = DataField.ID + = ?;String whereValue = Integer.toString(id) ;Log.v(update data, where+ +id);ContentValues cv = new ContentValues();cv.put(DataField.LINK, link);cv.put(DataField.T

9、ITLE, title); cv.put(DataField.DESCRIPTION, des);cv.put(DataField.MODIFIED_DATE, System.currentTimeMillis();db.update(TABLE_NAME, cv, where, whereValue); db.close();/插入public long insert(String title,String link,String des)SQLiteDatabase db = this.getWritableDatabase();ContentValues cv = new Content

10、Values();cv.put(DataField.LINK, link);cv.put(DataField.TITLE, title);cv.put(DataField.DESCRIPTION, des);cv.put(DataField.CREATED_DATE, System.currentTimeMillis();long row = db.insert(TABLE_NAME, null, cv);db.close();return row;Activity01 Java 代码package com.oa.ike.rssreader; import android.app.Activi

11、ty;import android.content.ContentValues;import android.database.Cursor;public class Activity01 extends Activity private DBHelper myToDoDB;private Cursor myCursor;Private String names;Overrideprotected void onCreate(Bundle savedlnstanceState) super.onCreate(savedlnstanceState); setContentView(R.layout.activity_main);/查询数据private void getDataFromCursor()myToDoDB = new RssListDB(this); myCursor = myToDoDB.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论