初次使用SQLiteOpenHelper
插入数据
insert(table, nullColumnHack, values)
table:表名
nullColumnHack:空列的默认值
values:一个封装了列名和列植的Map,代表了一条数据
删除数据
db.delete(table, whereClause, whereArgs)
table:表名
whereClause:删除条件,可以包含通配符“?”
whereArgs:删除条件参数数组,用来填充通配符
查询数据
db.query(table, columns, selection, selectionArgs, groupBy, having, orderBy)
table:表名
columns:列名数组
selection:条件where子句,可以包含通配符“?”
groupBy:分组列
having:分组条件
orderBy:排序列
修改数据
db.update(table, values, whereClause, whereArgs)
table:表名 values:更新的记录信息
whereClause:更新的条件,可以包含通配符“?”
whereArgs:更新的条件值数组,用来填充通配符
具体操作可参见一下代码:
public class MyHelper extends SQLiteOpenHelper {
public static String DB_NAME = "note.db";
public static String TAB_NAME = "notes";
public static String ID = "_id";
public static String CONTENT = "content";
public static String DATE = "date";
private SQLiteDatabase db;
public MyHelper(Context context) {
super(context, DB_NAME, null, 1);
}
/**
* 创建数据库时调用
*/
@Override
public void onCreate(SQLiteDatabase db) {
this.db = db;
String sql = "create table notes (" + ID
+ " integer primary key autoincrement," + CONTENT + " text,"
+ DATE + " text)";
//建表
db.execSQL(sql);
//插入一些初始数据
ContentValues values01 = new ContentValues();
values01.put(CONTENT, "我是初始数据一");
values01.put(DATE, getdate());
ContentValues values02 = new ContentValues();
values02.put(CONTENT, "我是初始数据二");
values02.put(DATE, getdate());
db.insert(TAB_NAME, null, values01 );
db.insert(TAB_NAME, null, values02 );
}
/**
* 获取当前时间
* @return
*/
public String getdate() {
Date dt = new Date();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = df.format(dt);
return nowTime;
}
/**
* 插入数据
* @param values
*/
public void insert(ContentValues values) {
db = getWritableDatabase();
db.insert(TAB_NAME, null, values);
db.close();
}
/**
* 删除数据
* @param date
*/
public void delete(String date) {
db = getWritableDatabase();
db.delete(TAB_NAME, DATE + "= ? ", new String[] { date });
db.close();
}
/**
* 查询数据
* @return
*/
public Cursor query() {
db = getWritableDatabase();
Cursor cursor = db.query(TAB_NAME, null, null, null, null, null, null);
return cursor;
}
/**
* 更新数据
* @param values
* @param date
*/
public void updata(ContentValues values, String date) {
db = getWritableDatabase();
db.update(TAB_NAME, values, DATE + "= ? ", new String[] { date });
}
/**
* 更新数剧库时调用
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。