欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android SQLite数据库 博客分类: android-->非界面 SQLiteDatabasehelpergetReadableDatabasecuosr数据库 

程序员文章站 2024-03-14 18:53:53
...
SQLite
2个主要的类
A)__SQLiteOpenHelper
这个类是一个抽象类
实现他的类必须包含一个构造方法: public **(Context context,表的名字,CursorFactory,版本){spuer(**,**,**,**)}
参数注意:
version(版本):必须是大于0的整数

方法:
getReadableDatabase()   返回:可读的SQLiteDatabase
getWritableDatabase()  返回:可写的SQLiteDatabase
onCreate(SQLiteDatabase db) 第一次调用这个类的时候会调用 ,是个回调函数
onUpgradel(SQLiteDatabase db,int oldVersion,int new Version) 升级数据库的时候调用,是个回调函数
claose() 当关闭数据库时,是个回调函数

B)__SQLiteDatabase SQLite操作的类

实例:

//Databasehelper 是一个继承自SQLiteOpenHelper的类
Databasehelper dbHeper = new DatabaseHelper(上下文环境,"数据库名称",null,版本);
SQLiteDatabase db = dbHeper.getReadableDatabase();//或 getWritableDatabase()

//查询 返回 Cursor(一个游标类型,可以用 curosr.moveToNext()执行下一步操作)
Curosr cu = db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy);
while(cu.moveToNext()){
String name =cu.getString(cu.getColumnINdex("列名"));
}

//增加
ContentValues cv = new ContentValues();
cv.put("列名","值");
long row = db.insert("表名",null,cv);

//删除
String where ="ID = ?";
String [] whereValue = {Integer.toString(id)};//这里如果where有多少个? 就要有多少个值
db.delete("表名",where,whereValue);

//修改
String where ="id =?";
String [] whereValue = {Integer.toString(id)};
ContentValues cv = new ContentValues();
cv.put("列名","要修改成什么值");
db.update("表名",cv,where,whereValue);
  • DbOpenHelper.zip (1.1 KB)
  • 描述: DbOpenHelper.java的压缩文件
  • 下载次数: 13