Android数据存储————SQLite数据库创建及增删改查操作

本文详细介绍了Android中SQLite数据库的创建、使用SQLiteOpenHelper进行管理,以及如何通过SQL语句和SQLiteDataBase API进行数据的增、删、改、查操作。讲解了SQLiteOpenHelper的常用方法和实例代码,帮助开发者掌握Android数据库基础操作。
摘要由CSDN通过智能技术生成

(一)Android数据存储————文件存储(内部存储):https://blog.csdn.net/sinat_29675423/article/details/85699131
(二)Android数据存储————文件存储(外部存储):https://blog.csdn.net/sinat_29675423/article/details/85705545
(三)Android数据存储————SharedPreference使用及封装:https://blog.csdn.net/sinat_29675423/article/details/85778297

本文简介SQLite数据库的创建及增删改查操作。

存储特点

SQLite非常容易上手,不需要服务器也不需要复杂配置的小型的、单文件形式的数据库。它效率高、开源跨平台、支持事务操作、可嵌入…总之很受欢迎。

存储位置

数据库为.db文件,存在data/data/<package_name>/databases/,里面可以存放数据表。
在这里插入图片描述

数据库查看

这里以sqlite3为例,简述在command中查看数据库及表中内容:

  1. 进入数据库目录 databases (cd data/data/包名/databases)
  2. 进入数据库 studentStore (sqlite3 studentStore)
  3. 接下来就可以用sql语句进行操作
  4. 比如:查看数据库中的表 tables (.tables)
  5. 比如:查看表中的所有数据 (select * from table;)
    在这里插入图片描述

存储数据类型

类型 描述
INTEGER 一个带符号的整数
NULL 一个 NULL 值
REAL 一个浮点值
TEXT 一个文本字符串

数据库创建

需要理解下面两个重要的类,具体可到android developer官网查看api开发文档。

  • SQLiteOpenHelperA helper class to manage database creation and version management.You create a subclass implementing onCreate(SQLiteDatabase), onUpgrade(SQLiteDatabase, int, int) and optionally onOpen(SQLiteDatabase), and this class takes care of opening the database if it exists, creating it if it does not, and upgrading it as necessary. Transactions are used to make sure the database is always in a sensible state.
  • SQLiteDataBaseSQLiteDatabase has methods to create, delete, execute SQL commands, and perform other common database management tasks.
    ————摘自android developer API说明

SQLiteOpenHelper的常用方法:
构造函数: DataBaseHelper(Context context, String DataBasename, SQLiteDatabase.CursorFactory factory, int version)
创建方法: onCreate()
更新升级方法:onUpdate()
获取SQLiteDataBase对象:getWritableDatabase()

实现一个类,继承自SQLiteOpenHelper(SQLiteDataBase的帮助类)
public class DataBaseHelper extends SQLiteOpenHelper {
   

    //创建一个名叫Student的表,字段有_id, name, class, age
    private static final String CREATE_STUDENT = "create table Student("+
            "_id integer primary key autoincrement," + "name text,"+
            "class text,"+ "age Integer)";

    private Context mcontext;

    public DataBaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
   
        super(context, name, factory, version);
        this.mcontext = context;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
   
        //创建
        db.execSQL(CREATE_STUDENT);
        Toast.makeText(mcontext,"数据库创建成功"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值