技海泛舟(个人技术研究)

  • 首页
  • 日积月累
  • 学习计划
  • 随想
  • project
  • 关于
技海泛舟
一个技术宅的博客
  1. 首页
  2. 学习计划
  3. 正文

Android存储方式之SQLite

2022年11月9日 2209点热度

sql的基本语法

不区分大小写,唯一区分大小写的被单引号括起来的字符串值。
sqlite支持整型integer、长整型long、字符串varchar、浮点数float,但不支持布尔类型,布尔一般自动存成0或1.
要有主键
一般使用工具sqlite expert personal

  • 创建数据库

    sqlite3 DatabaseName.db

    -删除表格

    DROP TABLE IF EXISTS user_info;
  • 创建表格

    CREATE TABLE IF NOT EXISTS test.user_info (_id INTEGER PRIMARY KEY AUTOINCREMNET NOT NULL, name VARCHAR NOT NULL, age INTEGER NOT NULL, height LONG NOT NULL, weight FLOAT NOT NULL,married INTEGER NOT NULL,update_time VARCHAR NOT NULL);
  • 修改表格
    sqlite 只支持增加字段,不支持修改字段,也不支持删除字段

    ALTER TABLE user_info ADD COLUMN phone VARCHAR;
  • 操作数据(增删改查)

    • 添加记录 insert

      INSERT INTO user_info (name,age,height,weight,married,update_time) VALUES ('zhangsan',20,170,29,0,'20221109');
    • 删除记录 delete,查询条件可以通过'and'、 'or' 连接

      DELETE FROM user_info WHERE name="zhagnsan";
    • 修改记录 update tablename set ... where ....

      UPDATE user_info SET married=1 WHERE  name='zhangsan';
    • 查询记录

      
      SELECT name FROM user_info WHERE name='zhangsan';
      SELECT * FROM  user_info WHERE name LIKE '%san'

    SELECT * FROM user_info WHERE name LIKE '%san' ORDER BY age ASC LIMIT 2 OFFSET 3; // 升序排列 取2条数据,偏移3条

数据库管理类SQLiteDatabase

它提供了操作数据库的api。常用的方法有3类:

  1. 管理类,用于数据库层面的操作。
    openDatabase:打开指定路径的数据库
    isOpen:判断数据库是否已打开;
    close: 关闭数据库
    getVersion: 获取数据库的版本号;
    setVersion:设置数据库的版本号
  2. 事务类,用于事务层面的操作
    beginTransaction: 开始事务;
    setTransactionSuccess:设置事务的成功标志
    endTransaction:结束事务。
  3. 数据处理类,用于数据表层面的操作。
    execSQL:执行拼接好的sql控制语句;
    delete:删除符合条件的记录
    update:更新符合条件的记录;
    insert:插入一条记录;
    query:执行查询操作,返回结果集的游标;
    rawQuery:执行拼接好的sql查询语句,返回结果集的游标。

    数据库帮助器类SQLiteOpenHelper

    SQLiteOpenHelper是Android提供的数据库辅助工具,用于指导开发者进行SQLite的合理开发
    使用步骤:

    • 新建一个继承自SQLiteOpenHelper的数据库操作类,重写onCreate和onUpgrade方法
    • 封装保证数据库安全的必要办法
    • 提供对表记录进行增删改查的操作方法。

实例一:创建删除数据库

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2022年11月9日
< 上一篇
下一篇 >
归档
  • 2024 年 11 月
  • 2024 年 8 月
  • 2024 年 5 月
  • 2024 年 2 月
  • 2023 年 12 月
  • 2023 年 11 月
  • 2023 年 9 月
  • 2023 年 6 月
  • 2022 年 12 月
  • 2022 年 11 月
  • 2022 年 10 月
  • 2022 年 9 月
  • 2022 年 8 月
  • 2022 年 7 月
  • 2022 年 6 月
  • 2022 年 5 月
  • 2022 年 4 月
  • 2022 年 3 月
  • 2022 年 2 月
  • 2022 年 1 月
  • 2021 年 12 月
  • 2021 年 11 月
  • 2021 年 10 月
  • 2021 年 5 月
分类
  • Android
  • Arduino
  • cordova
  • css
  • go
  • html5
  • JavaScript
  • nodejs
  • oracle
  • project
  • system
  • uni-app
  • vscode
  • vue
  • 学习计划
  • 摘抄
  • 随想
最新 热点 随机
最新 热点 随机
windows安装mysql ,VSCODE连接MySQL数据库 创建api的逻辑 观看七战奥运会 德国波尔告别 go utils工具 Go语言中的sort包帮我们实现了对任一类型的数组进行排序。 vue + go安装
创建api的逻辑 使用uni-app框架创建一个app项目 Go语言中的sort包帮我们实现了对任一类型的数组进行排序。 如果孩子的教育出了问题,那你的所有成功不值一文 Google的十诫

COPYRIGHT © 技海泛舟(个人技术研究). 2021-2023. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

黑ICP备19002110号-1

黑公网安备 23060202000432号