SQL实现CRUD操作
2021-07-06 本文已影响0人
浅_若清风
在使用SQLite数据库时,除了使用Android提供的API操作数据库,我们还可以直接使用SQL语句来实现添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)操作,即CRUD操作。
1.添加(Create)
//SQL语句添加方法
SQLiteDatabase db = dataBaseHelper.getWritableDatabase();
//插入第一条数据
db.execSQL("insert into User(name,height,age) values(?,?,?)",new String[]{"浅若清风","165","31"});
//插入第二条数据
db.execSQL("insert into User(name,height,age) values(?,?,?)",new String[]{"浅若清风1","166","32"});
2.更新(Update)
//SQL语句更新方法
SQLiteDatabase db = dataBaseHelper.getWritableDatabase();
db.execSQL("update User set age = ? where name = ?",new String[]{"18","浅若清风"});
3.删除(Delete)
//SQL语句删除方法
SQLiteDatabase db = dataBaseHelper.getWritableDatabase();
db.execSQL("delete from User where age >?",new String[]{"18"});
4.查询(Retrieve)
//SQL语句查询方法
SQLiteDatabase db = dataBaseHelper.getWritableDatabase();
//查询User表中的所有数据
Cursor cursor = db.rawQuery("select *from User",null);
if (cursor.moveToFirst()){
do {
//遍历Cursor对象,取出数据
String name = cursor.getString(cursor.getColumnIndex("name"));
double height = cursor.getDouble(cursor.getColumnIndex("height"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
}while (cursor.moveToNext());
}
cursor.close();
对比提供的API操作数据库,SQL的添加、更新、删除都是调用SQLiteDatabase的execSQL()方法,查询则是调用SQLiteDatabase 的rawQuery()方法。使用Android提供的API操作数据库可参考持久化技术之SQLite数据库存储