您的位置:

Android SQLite 数据库操作详解

在开发Android应用过程中,本地数据的存储和管理是非常常见的需求。而Android系统提供了SQLite数据库,支持非常强大和灵活的数据存储方式。本文就来详细介绍如何在Android应用中进行SQLite数据库操作。

一、创建SQLite数据库

在Android应用中创建SQLite数据库有两个核心概念:SQLiteOpenHelper 和 SQLiteDatabase。

SQLiteOpenHelper 是Sqlite数据库操作的帮助类,提供了创建、更新和打开 Sqlite 数据库的功能。下面是一个创建 SQLiteOpenHelper 的示例代码:

public class MySQLiteOpenHelper extends SQLiteOpenHelper {
    private static final String DB_NAME = "my_db.db"; // 数据库名称
    private static final int DB_VERSION = 1; // 数据库版本

    public MySQLiteOpenHelper(Context context) {
        super(context, DB_NAME, null, DB_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // 创建表格等数据库操作
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
       // 数据库升级操作
    }
}

SQLiteDatabase 是一个表示 SQLite 数据库的类,提供了对数据表的操作,包括 CRUD 操作(增删改查)等。下面是一个使用 SQLiteDatabase 创建表格的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
String sql = "create table user(_id integer primary key autoincrement,name varchar(20) not null,age integer not null)";
db.execSQL(sql);
db.close();

二、SQLite数据库的增删改查操作

1. SQLite 数据库的插入操作

使用 SQLiteDatabase 的 insert() 方法可以将数据插入到数据库中。一般情况下,我们使用 ContentValues 来辅助进行数据增加。下面是一个示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name","Tom");
values.put("age",25);
db.insert("user",null,values);
db.close();

2. SQLite 数据库的查询操作

使用 SQLiteDatabase 的 query() 方法可以进行数据库的查询操作,使用 Cursor 对象来获取查询结果。下面是一个查询用户列表并打印的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getReadableDatabase();
Cursor cursor = db.query("user",new String[]{"_id","name","age"},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"));
    // 打印数据
    Log.d("TAG","id = "+id+", name = "+name+", age = "+age);
}
cursor.close();
db.close();

3. SQLite 数据库的更新操作

使用 SQLiteDatabase 的 update() 方法可以进行数据库的更新操作。下面是一个更新指定用户的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("age", 26);
int updateCount = db.update("user", values, "_id=?", new String[]{"2"});
db.close();

4. SQLite 数据库的删除操作

使用 SQLiteDatabase 的 delete() 方法可以进行数据库的删除操作。下面是一个删除指定用户的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
int deleteCount = db.delete("user","_id=?",new String[]{"2"});
db.close();

三、SQLite数据库事务操作

在进行 SQLite 数据库操作时,如果需要对多个操作进行集合管理或者需要批量进行数据操作,可以使用事务操作。SQLite 支持事务的概念,这样可以增加数据的安全性和数据处理速度。下面是一个数据库事务管理的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
try {
    db.beginTransaction();
    // 数据库操作1
    // 数据库操作2
    // 数据库操作3
    db.setTransactionSuccessful();
} finally {
    db.endTransaction();
    db.close();
}

四、SQLite数据库执行SQL语句操作

在某些情况下,我们需要执行自定义的 SQL 语句进行数据的操作,这时我们可以使用 SQLiteDatabase 的 execSQL() 方法来执行 SQL 语句。下面是一个执行自定义 SQL 语句的示例代码:

MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context);
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("insert into user(name,age) values('Tom',25)");
db.close();

五、总结

本文详细介绍了在 Android 应用中对 SQLite 数据库进行相关操作的方法,包括创建数据库、数据的增删改查、事务操作,以及执行 SQL 语句等。使用 SQLite 数据库可以为我们的应用提供强大和灵活的本地数据存储和管理功能,希望本文能对开发人员有所帮助。

Android SQLite 数据库操作详解

2023-05-18
使用Python操作Android Studio中的SQLi

一、关于SQLite数据库 SQLite 是一个轻量化的数据库管理系统,能够在本地存储数据并提供高效的数据更新、查询操作。Android系统中就使用了SQLite数据库来存储应用数据,在Android

2023-12-08
Android SQLite的增删改查操作详解

2023-05-19
使用Python操作Android SQLite数据库

2023-05-14
学习Android Room数据库操作指南

在 Android 应用程序中,数据存储是无法避免的。你需要在你的应用程序中存储和管理用户数据。Android 为开发者提供了不同类型的存储选项,包括 Shared Preferences、文件存储、

2023-12-08
Android数据存储:SQLite数据库的使用教程

2023-05-14
深入了解SQLite数据库

2023-05-20
数据库的笔记mysql,数据库管理系统笔记

2022-11-24
关于json和sqlite数据库怎么对应起来的信息

本文目录一览: 1、json文件怎么保存到sqlite数据库,将详细点,给高分!!! 2、得到了JSON数据,想插入到SQLite数据库中,Python 语句怎么写? 3、怎么将JSON文件传入sql

2023-12-08
使用Python实现Android SQLite的增删改查操

SQLite是一种轻量级的数据库,它可用于Android应用程序的本地数据存储。Python是一种高级编程语言,它可以与SQLite数据库进行交互。在本文中,我们将探讨如何使用Python在Andro

2023-12-08
Android文件存储方案详解:内部存储、外部存储、SQLi

在Android开发中,文件读写是一项基本操作,为了支持文件的读写操作,Android系统提供了多种文件存储方式,如内部存储、外部存储和SQLite数据库等。本文将详细介绍这些文件存储方式的特点、使用

2023-12-08
Python数据库操作: 使用sqlite3.connect

2023-05-19
SQLite数据库删除操作

2023-05-22
SQLite数据库详解

2023-05-16
印象笔记记录java学习(Java成长笔记)

2022-11-12
C# Sqlite详解

2023-05-21
SQLiteHelper:高效管理SQLite数据库的利器

2023-05-18
使用Python操作SQLite数据库

一、SQLite简介SQLite是一款轻量级的数据库,旨在提供一个基本的关系型数据库管理系统。SQLite一般用于本地数据存储,例如存储应用程序的用户信息、位置信息等。SQLite与Python的结合

2023-12-08
python中操作数据库(python中操作数据库删除数据)

2022-11-12
MySQL和SQLite数据库详解

2023-05-18