SQLite是android提供的内置的一个轻量级别的数据库。使用SQLite的应用程序都有一个该数据库的实例,一般情况下数据储存在androidSD卡的 /data/data/<packagename>/databases 文件夹中。
使用SQLite的步骤:
创建数据库
打开数据库
创建表
完成数据库的(增删改查)
关闭数据库
下面都是根据谷歌封装好的方法来进行的表的增删改查
使用谷歌封装好的方法操作数据库的利弊:
利: 1.写法简单,不需要写复杂的SQL语句,也就不容易出错
2.有返回值,方便开发者进行开发
弊:不容易进行多表查询
使用SQL语句操作数据库的利弊:
利:容易多表查询
弊:1.SQL语句容易写错
2.执行SQL语句没有返回值,不容易进行判断
1. 继承SQLiteOpenHelper
public MySqliteOpenHelper(Context context) {
super(context, DB_NAME, null, VERTION);
//创建了一个数据库
}
@Override
public void onCreate(SQLiteDatabase db) {
//在onCreate中创建我们所有的表
db.execSQL(CRETAE_TABLE_USER);
}
@Override
13. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVer
sion) {
14. //数据库版本更新的时候
15. //删除旧的表,建立新的表
16. }
17.
18. 2. 获取数据库
19. MySqliteOpenHelper helper = new MySqliteOpenHelper(this);
20. //helper.getWritableDatabase() //当磁盘满了,就会报错
21. //helper.getReadableDatabase() //当磁盘满了,不进行操作了
22.
23. 3. 增删查改
24. //成功返回插入的id号,失败返回-1
25. db.insert(TABLE_NAME, null, contentValues(键值对来保存数据库的键名=值));
26. //成功返回受影响的行数,失败返回-1
27. db.update(TABLE_NAME, 修改的数据contentValues, "条件 使用?来占位", new Str
ing[]{对应?占位符});
28. db.query(TABLE_NAME, null, null, null, null, null, null);//全部查询
29. //选择性查询
30. db.query(TABLE_NAME, new String[]{查询的列}, "条件?", new String[]{对应?
}, null, null, null);
31.
32. //成功返回受影响的行数,失败返回-1
33. db.delete(TABLE_NAME,"条件"