SQLite 的使用
参考:https://www.geek-share.com/detail/2577708382.html
http://liangruijun.blog.51cto.com/3061169/663686/
SQLite主要用了两个类:SQLiteOpenHelper类和SQLiteDatabase类
SQLiteOpenHelper 类:
1、这个类是抽象类,自己必须继承它写个子类
2、库名和版本是在构造函数中传入
3、创建表是在重写onCreat()函数中
调用getWritableDatabase()或者getReadableDatabase()方法时,会使用传入的库名和版本,如果数据库不存在,就会创建库并执行onCreat()方法,若存在 就不执行onCreat(),
调用getWritableDatabase()或者getReadableDatabase()方法返回一个SQLiteDatabase类对象,获得SQLiteDatabase之后,用SQLiteDatabase执行SQL语句进行读写。
SQLiteDatabase类应重点掌握execSQL()和rawQuery()方法:
execSQL()方法可以执行insert、delete、update和CREATE TABLE之类有更改行为的SQL语句;
rawQuery()方法用于执行select语句。
public class DbOpenHelper extends SQLiteOpenHelper{
public DbOpenHelper(Context context,int version) {
super(context, "name_db", null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table person(id integer, name text, age integer)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
获得SQLiteDatabase之后可以进行增删改查:
sql方式:
db.execSQL("insert into person(id,name,age) values(2,'wzl',30)");//插入数据
db.execSQL("delete from person where id=1");//删除
db.execSQL("update person set name='haohao' where id=2");//更改
db.rawQuery("select * from person where id=1 ", null);//查询:带到的为Cursor对象。cursor.moveToFirst()
db API方式:
API参数含义参看http://blog.csdn.net/kongzhichen/article/details/9336003
插入
ContentValues values = new ContentValues();
values.put("id", 1);
values.put("name", "lina");
values.put("age", 24);
db.insert("person", null, values);
删除
db.delete("person", "id=?", new String[]{"1"});
更改
ContentValues values = new ContentValues();
values.put("name", "liwen");
db.update("person", values, "id=?", new String[]{"1"});
查询
db.query("person",null, "id=?", new String[]{"1"}, null, null, null);
- C++使用SQLite3心得 -- sqlite3以二进制形式存取图片(MFC,CppSQLite3U封装类)
- Swift学习第九枪之SQLite的使用
- sqlite的使用方法汇总
- SQLite使用(1)
- 在.net中使用sqlite
- SQLITE3 使用总结(3)
- 【转】IOS数据库操作SQLite3使用详解
- sqlite3数据的使用(xcode 7,ios9)
- android sqlite的SqliteDataBase.insert()方法,以及如何在事务管理中使用
- SQLite和RecyclerView使用过程中两处报错记录
- 在多线程中使用sqlite太恶心了
- 使用C 语言 sqlite3 的创建,查找,添加
- SQLite简单使用
- Delphi XE之路(8)xe5 android 手机上使用sqlite
- SQLite使用小记2015.06.03(长期更新中)
- 如何使用SQLite
- 在TCX中使用SQLite3
- Unity3D使用SQLite
- C/C++下使用SQLite轻量级数据库