【Android】数据库的简单应用——增删改查的操作

  还记得getReadableDatabase()和getWritableDatabase()方法吧?在调用它们的时候会返回一个SQLiteDatabase对象,借助这个对象就可以进行CURD(Create添加、Update更新、 Retrieve查询、Delete删除)工作了。

  1.Create——insert()

  insert()接受三个参数,第一个是表名,第二个是给可为空的列自动复制Null,一般只需要传入null即可,第三个参数是一个ContentValues对象,它提供了一系列的put()方法重载,用于向ContentValues中添加数据,只需要传入每个类名以及对应的数据即可。

eg:

SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
//  开始组装第一条数据
values.put("name", "The Da Vinci Code");
values.put("author", "Dan Brown");
values.put("pages", 454);
values.put("price", 16.96);
db.insert("Book", null, values); //  插入第一条数据
values.clear();
//  开始组装第二条数据
values.put("name", "The Lost Symbol");
values.put("author", "Dan Brown");
values.put("pages", 510);
values.put("price", 19.95);
db.insert("Book", null, values); // 

  2.Update——update(),接收4个参数,第一个参数是表名,第二个参数是ContentValues对象,第三、第四个参数是用于约束更新某一行或者某几行的数据,不指定则默认更新所有行,第三个参数对应的是SQL中的 where  第四个参数对应的是SQL中的条件。

ContentValues values = new ContentValues();
values.put("price", 10.99);
db.update("Book", values, "name = ?", new String[] { "The Da
Vinci Code" });

  3.Delete——delete(),接收3个参数,第一个是表名,第二、第三个则是约束删除某一行或者某几行的数据,不指定则默认删除所有行。

SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete("Book", "pages > ?", new String[] { "500" });

  4.Retrieve——query(),接收7个参数(只说最短那个),第一个参数为表名,第二个参数用于查询哪几列,不指定则默认为查询所有列,第三个、第四个参数用于约束默认查询为某一行或者某几行的数据,不指定则默认为查询所有行的数据,第五个参数用于是否进行group by操作,不指定则默认不进行,第六个参数用户对group by参数进行过滤,不指定则默认为不过滤,第七个参数用于指定查询结果的排序方式,不指定则默认为默认排序方式。调用query()方法会返回一个Cursor对象,查询到的数据都从这个对象中取出。

SQLiteDatabase db = dbHelper.getWritableDatabase();
//  查询Book 表中所有的数据
Cursor cursor = db.query("Book", null, null, null, null, null, null);
if (cursor.moveToFirst()) {
do {
//  遍历Cursor 对象,取出数据并打印
String name = cursor.getString(cursor.
getColumnIndex("name"));
String author = cursor.getString(cursor.
getColumnIndex("author"));
int pages = cursor.getInt(cursor.getColumnIndex
("pages"));
double price = cursor.getDouble(cursor.
getColumnIndex("price"));
Log.d("MainActivity", "book name is " + name);
Log.d("MainActivity", "book author is " + author);
Log.d("MainActivity", "book pages is " + pages);
Log.d("MainActivity", "book price is " + price);
} while (cursor.moveToNext());
}
cursor.close();

  

转载于:https://www.cnblogs.com/It-Hugo0527/p/5821333.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Android Studio 中的数据库增删改查操作可以通过使用 SQLite 数据库实现。以下是一些基本的操作: 1. 增加数据:使用 insert() 方法向数据库中添加新的数据。 2. 删除数据:使用 delete() 方法从数据库删除数据。 3. 修改数据:使用 update() 方法修改数据库中的数据。 4. 查询数据:使用 query() 方法从数据库查询数据。 在进行这些操作之前,需要先创建数据库格,并定义相应的数据模型。可以使用 SQLiteOpenHelper 类来创建和管理数据库。 在进行增删改查操作时,需要使用 SQLiteDatabase 类来执行相应的操作。可以使用 ContentValues 类来存储数据,以便在插入或更新数据时使用。 需要注意的是,在进行数据库操作时,应该使用异步任务或线程来执行,以避免阻塞 UI 线程。可以使用 AsyncTask 类或 HandlerThread 类来实现异步操作。 以上是 Android Studio 中数据库增删改查的基本操作,具体实现可以参考相关的文档和示例代码。 ### 回答2: Android Studio 是一个常用的开发工具,它的数据库操作功能不仅能够帮助开发者提高开发效率,还能帮助我们更好地处理数据。接下来将会介绍如何在 Android Studio 中对数据库进行增删改查。 1. 创建数据库 Android 中的数据库操作依赖 SQLite,所以需要先引入 SQLite 相关的依赖。然后在创建数据库之前,需要定义的结构。这可以通过创建一个 Java 类来实现。在该类中定义的结构,每个属性代的一列。创建完 Java 类后,使用该类中的属性创建数据库。下面是一个例子: ```java public class DBHelper extends SQLiteOpenHelper { public static final String CREATE_USER = "create table user (" + "id integer primary key autoincrement, " + "name text, " + "age integer, " + "height real)"; private Context mContext; private SQLiteDatabase db; public DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { super(context, name, factory, version); mContext = context; } @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { sqLiteDatabase.execSQL(CREATE_USER); Toast.makeText(mContext, "创建数据库成功", Toast.LENGTH_SHORT).show(); db = sqLiteDatabase; } } ``` 在上面的代码中,我们创建了一个 DBHelper 类来操作数据库,其中 CREATE_USER 是创建数据 user 的 SQL 语句,onCreate 方法中调用了 sqLiteDatabase 的执行 SQL 语句方法 execSQL,从而创建了 user 数据。 2. 数据库增删改查 接下来,我们需要对数据库进行增删改查操作。常见的数据库操作增加数据删除数据修改数据查询数据增加数据: ```java ContentValues values = new ContentValues(); values.put("id", 1); values.put("name", "小明"); values.put("age", 20); values.put("height", 1.75); db.insert("user", null, values); ``` 对 user 进行插入数据操作,使用 ContentValues 对象组装待插入的数据,调用 SQLiteDatabase 的 insert 方法,即可完成数据插入。 删除数据: ```java db.delete("user", "id = ?", new String[]{"1"}); ``` 其中 delete 方法需要传入三个参数,第一个参数是明,第二个参数是 SQL 语句中的 WHERE 条件,第三个参数是 WHERE 条件的占位符。 修改数据: ```java ContentValues values = new ContentValues(); values.put("age", 21); values.put("height", 1.80); db.update("user", values, "id = ?", new String[]{"1"}); ``` 其中 update 方法也需要传入三个参数,第一个参数是明,第二个参数是待更新的数据,第三个参数是 SQL 语句中的 WHERE 条件。 查询数据: ```java Cursor cursor = db.query("user", null, null, null, null, null, null); while (cursor.moveToNext()) { int id = cursor.getInt(cursor.getColumnIndex("id")); String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); float height = cursor.getFloat(cursor.getColumnIndex("height")); Log.i(TAG, "id:" + id + " 姓名:" + name + " 年龄:" + age + " 身高:" + height); } ``` 其中 query 方法需要传入七个参数,第一个参数是名,第二个参数是待查询的列名,第三个到第七个参数是 SQL 中的其他操作,返回值是一个 Cursor 对象,通过遍历该对象的数据,即可完成数据查询。 3. 总结 Android Studio 数据库操作中,最重要的是创建数据库和创建的工作,需要在代码中显式地创建和定义。增删改查操作本质上是对数据库增删改查操作,需要通过调用相应的方法进行实现。每个方法都需要传入对应的参数,因此在操作时必须弄清楚参数的含义和对应的 SQL 语句的语法。 ### 回答3: Android Studio是Android开发人员非常常用的一款集成开发环境(IDE)。在Android应用开发中,常常需要用到数据库进行数据存储。而数据库操作包括增、删、改、查四个方面,而这四个方面的实现是相对独立的。 以下将针对Android Studio中对数据库增删改查的实现进行讲解。 首先,需要了解Android开发中常用的SQLite数据库。在Android Studio中,我们可以使用SQLiteOpenHelper类来创建和管理数据库。SQLiteOpenHelper中有两个方法是非常重要的:onCreate()和onUpgrade()。onCreate()方法用于第一次创建数据库进行结构的创建,onUpgrade()方法用于数据库版本升级时进行数据迁移。 接下来,我们分别介绍如何实现增、删、改、查四个操作。 1. 数据库增加数据 对于SQLite数据库而言,数据的添加直接使用SQL语句即可。如下面的示例代码所示: ```Java public void insertData(String name, String age) { SQLiteDatabase db = this.getWritableDatabase(); //获取可写数据库 ContentValues values = new ContentValues(); values.put("name", name); values.put("age", age); db.insert("user", null, values); db.close(); } ``` 首先,我们需要获取可写数据库,然后将要插入的数据封装到ContentValues对象中,最后使用insert()方法在增加数据即可。 2. 数据库删除数据 对于数据库中的数据删除操作,同样需要使用SQL语句。如下面的示例代码所示: ```Java public void deleteData(int id) { SQLiteDatabase db = this.getWritableDatabase(); //获取可写数据库 db.delete("user", "id = ?", new String[]{ String.valueOf(id) }); db.close(); } ``` 其中,delete()函数中的第二个参数用于指定删除数据库的条件。删除指定id的一行数据,调用delete()时就可以把id传入参数中。 3. 数据库更新数据 数据库中的数据更新操作同样需要使用SQL语句,可以使用update()方法来进行更新。如下面的示例代码所示: ```Java public void updateData(int id, String name, String age) { SQLiteDatabase db = this.getWritableDatabase(); //获取可写数据库 ContentValues values = new ContentValues(); values.put("name", name); values.put("age", age); db.update("user", values, "id = ?", new String[]{ String.valueOf(id) }); db.close(); } ``` 其中的update()方法需要传入的参数分别为需要更新的内容、更新条件和条件参数。根据id值找到对应的一行数据,从而进行更新操作。 4. 数据库查询数据 Android Studio提供了非常方便的查询接口,使用query()方法可以方便地完成数据查询操作。如下面的示例代码所示: ```Java public Cursor queryData() { SQLiteDatabase db = this.getWritableDatabase(); //获取可写数据库 Cursor cursor = db.query("user", new String[]{ "id", "name", "age" }, null, null, null, null, null); return cursor; } ``` 这里的Cursor对象代一个指向查询结果的指针,可以通过它来遍历整个结果集。在上面的示例代码中,query()方法中的第一个参数指定了查询名,第二个参数指定了需要查询的字段,第三个参数指定了查询条件,第四、五、六个参数分别示分组、过滤和排序的条件。最后返回查询结果的Cursor对象即可。 总结: 本文介绍了Android Studio中如何使用SQLiteOpenHelper类来创建和管理数据库,以及如何实现数据库的增、删、改、查四个操作。SQLite数据库Android中最常用的数据库之一,它轻巧便捷,对于简单数据存储操作非常方便。在实际开发中,可以根据具体的需求,灵活使用各种数据库操作方式来实现功能的开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值