- 1
- 0
- 约2.59万字
- 约 13页
- 2021-11-21 发布于福建
- 举报
使用 SQLiteDatabase 操
作 SQLite 数据库
view plaincopy to clipboardprint?
1. /*
2. Android 提供了一个名为 SQLiteDatabase 的类,该类封装了一些操作数据库的 API ,使用该类
可以完成对数据进行添加 (Create) 、查询 (Retrieve) 、更新 (Update) 和删除 (Delete) 操作 (这
些操作简称为 CRUD)。对 SQLiteDatabase 的学习,我们应该重点掌握 execSQL() 和 rawQuery()
方法。 execSQL() 方法可以执行 insert 、delete 、update 和 CREATE TABLE 之类有更改行为
的 SQL 语句; rawQuery() 方法用于执行 select 语句。
3. execSQL() 方法的使用例子:
4. SQLiteDatabase db = ;
5. db.execSQL(insert into person(name, age) values( 测试数据 , 4));
6. db.close();
7. 执行上面 SQL 语句会往 person 表中添加进一条记录, 在实际应用中, 语句中的 “测试数据 ”这些
参数值会由用户输入界面提供,如果把用户输入的内容原样组拼到上面的 insert 语句, 当用户
输入的内容含有单引号时,组拼出来的 SQL语句就会存在语法错误。要解决这个问题需要对单引
号进行转义,也就是把单引号转换成两个单引号。有些时候用户往往还会输入像 “ ”这些特殊
SQL符号,为保证组拼好的 SQL 语句语法正确,必须对 SQL 语句中的这些特殊 SQL 符号都进行转
义,显然,对每条 SQL 语句都做这样的处理工作是比较烦琐的。 SQLiteDatabase 类提供了一
个重载后的 execSQL(String sql, Object[] bindArgs) 方法,使用这个方法可以解决前面提
到的问题,因为这个方法支持使用占位符参数 (?) 。使用例子如下:
8. SQLiteDatabase db = ;
9. db.execSQL(insert into person(name, age) values(?,?), new Object[]{ 测试数
据, 4});
10. db.close();
11. execSQL(String sql, Object[] bindArgs) 方法的第一个参数为 SQL语句,第二个参数为 SQL
语句中占位符参数的值,参数值在数组中的顺序要和占位符的位置对应。
12. */
view plaincopy to clipboardprint?
1. public class DatabaseHelper extends SQLiteOpenHelper {
2. // 类没有实例化
原创力文档

文档评论(0)