![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android开发之数据持久化
Android开发之数据持久化
KarenChia
[Android领域]优质创作者,[ZK程序员的自我修养]公号作者,[幸福金钥·生涯领航]知识星球星主。多年软件开发经验,主导开发过多个手机APP。业余时间,玩副业,副业创收。
展开
-
数据库DB文件打开工具Navicat
软件官网地址:数据库DB文件打开工具Navicat原创 2019-04-03 15:09:50 · 20598 阅读 · 1 评论 -
Android数据存储之文件File
适用类型:流式顺序数据的读写Android中使用的文件 File,其实就是一个基于磁盘的文件系统,早期的设备将数据存储分成了两个部分:设备中内存大小固定不可变的内部存储和类似于SD Card的外部存储。在后面我所接触的设备中将这两个部分集成在了一起,做成了不可卸载的内置存储,但在逻辑上还是分成了内部存储和外部存储。内置存储(internal):在设备中始终是可用的;数据只提供给我们的APP...原创 2017-07-25 15:49:48 · 612 阅读 · 0 评论 -
Android数据保存-shared preference
适用类型:保存相对较小的 key-value 键值数据package net.oschina.git.zhaikun.androiddeveloped.activitys;import android.content.SharedPreferences;import android.os.Bundle;import android.support.annotation.Null...原创 2017-07-25 15:09:21 · 506 阅读 · 0 评论 -
转载:GreenDao设置数据库路径以及数据库升级
对于索引,type 等于 ‘index’, name 则是索引的名字,tbl_name 是该索引所属的表的名字。isTableExists(db, false, tableName)) {//不存在系统表中,表明是新增表,不需要创建临时表。type 字段永远是 ‘table’,name 字段永远是对应表的名字。转载 2022-12-13 15:24:21 · 852 阅读 · 0 评论 -
GreenDaoUpgradeHelper-greenDao的数据库升级帮助类
GreenDaoUpgradeHelper是一个greenDao的数据库升级帮助类。使用它可以很容易解决数据库升级问题,只需一行代码。使用说明...2.添加依赖(greendao 3.0及以上)3.添加一个新类继承,添加构造函数并实现onUpgrade@Override@Override@Override@Override@Override4.初始化//如果你想查看日志信息,请将DEBUG设置为truenull);原创 2023-10-02 00:22:07 · 429 阅读 · 0 评论 -
Android数据库高手秘籍(一)——SQLite命令
其中databases肯定是用于存放数据库文件的,files是用于存放普通文本文件的,lib是用于存放so库的,shared_prefs则是用于存放shared文件的。除了查询命令之外,还有其它的增删改命令都和标准的SQL语法是相同的,即insert、delete和update,由于比较简单,我就不再赘述了。幸运的是,有些手机软件已经提供了数据库表查询的功能,使得我们随时随地都可以方便地查看数据库中的数据,比如Root Explorer这款软件就不错。OK,确实有很多,毕竟手机上所有的应用程序都在这里。转载 2023-10-02 00:58:03 · 141 阅读 · 0 评论 -
Android数据库GreenDao的使用完全解析
之前在开发过程中,数据库基本上会使用Litepal或者SQlite自己写,最近换新环境,公司原先使用的数据库就是GreenDao,在各种情况的作用下,准备了解下GreenDao,顺便写一篇文章记录下GreenDao的基本使用!如果你是Android开发者,你在开发路上遇到任何问题,欢迎来我的公众号给我留言,咱们一起讨论,加入的Android开发讨论小组,一起进步!文章转载请注明出处。本文主要从如下几个方面进行讲解存储的数据库结构GreenDao的优缺点GreenDao的使用配置。转载 2023-10-02 00:08:48 · 1693 阅读 · 0 评论 -
Android数据库高手秘籍(零)——前言
Android中内置的数据库是SQLite,而我之前做Web开发时最常用的数据库是MySQL,经过对比之后我发现这两个数据库极为相似,都支持标准的SQL语法,还遵循了数据库的ACID事务,所以只要你以前使用过其它的关系型数据库,就可以很快地上手SQLite。但是,能够很好地掌握数据库各方面的使用技巧,对于一个Android程序员来说仍然是至关重要的,因此,这里我准备写一个《Android数据库高手秘籍》的专栏,带你一步步成为一个Android数据库高手,这是本专栏的第零篇文章。转载 2023-10-02 00:46:52 · 46 阅读 · 0 评论 -
greenDAO-Android轻量级快速ORM框架
greenDAO is a light & fast ORM for Android that maps objects to SQLite databases. Being highly optimized for Android, greenDAO offers great performance and consumes minimal memory.原创 2023-10-01 23:20:57 · 254 阅读 · 0 评论 -
GreenDao的简单理解和使用
关于 Android 中常用的数据存储方式有 Sp 存储 和 文件存储,但是对于数据量比较大,并且结构复杂的数据我们想要存储只能通过数据库进行处理,Android 中提供了一个 SQLite 数据库,但是使用起来比较繁琐和复杂greenDAO 是适用于 Android 的轻量级快速 ORM 框架,可将对象映射到 SQLite 数据库中。性能上(可能是 Android 上最快的 ORM 框架);易用性上(提供强大并且简洁明了的 API);轻量(最小的内存消耗与小于 150KB 的库大小)。转载 2023-10-01 23:36:34 · 340 阅读 · 0 评论 -
Android数据库高手秘籍(五)——LitePal的存储操作
其中,调用ContentValues的put()方法来添加待存储数据,put()方法接收两个参数,第一个参数是数据库表中对应的列名,第二个参数就是要存储的值,最后调用一下insert()方法,这条新闻就会插入到news表当中了,并且该数据行对应的id会作为返回值进行返回。LitePal中与存储相关的API其实并不多,但用法还是颇为丰富的,而且比起传统的insert()方法,使用LitePal来存储数据可以简单到让你惊叹的地步,那么今天我们就来完整地学习一下LitePal存储数据的所有用法。转载 2023-10-04 12:55:34 · 187 阅读 · 0 评论 -
Android数据库高手秘籍(六)——LitePal的修改和删除操作
非常简单,deleteAll()方法接收两个参数,第一个参数是Class,传入我们要删除的那个类的Class就好,第二个参数是一个conditions数组,用于指定删除哪些行的约束条件,返回值表示此次删除了多少行数据,用法和updateAll()方法是基本相同的。这样是不是就好理解了很多呢?这个静态的update()方法接收三个参数,第一个参数是Class,传入我们要修改的那个类的Class就好,第二个参数是ContentValues对象,这三个参数是一个指定的id,表示我们要修改哪一行数据。转载 2023-10-04 13:18:59 · 491 阅读 · 0 评论 -
Android数据库高手秘籍(四)——使用LitePal建立表关联
需要注意的是,一对一的关系并没有强制要求外键必须加在哪一张表上,你可以在introduction表中加一个news_id作为外键,也可以在news表中加一个introduction_id作为外键,不管使用哪一种,都可以表示出它们是一对一的关联关系。因此,使用LitePal来自动建立表关联又是一个非常不错的选择,我们不需要关心什么外键、中间表等实现的细节,只需要在对象中声明好它们相互之间的引用关系,LitePal就会自动在数据库表之间建立好相应的关联关系了,下面我们就来尝试一下吧。转载 2023-10-04 12:42:57 · 238 阅读 · 0 评论 -
Android数据库高手秘籍(二)——创建表和LitePal的基本用法
操作数据库的第一步当然是创建表了,传统创建表的方法相信大多数人都知道,那么今天我除了会展示传统的建表方法之外,还会讲解LitePal这个框架的基本用法,并使用它来完成同样的建表操作,让大家体会到使用框架来操作数据库的魅力。那么先来简单介绍一下吧,LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)的模式,并将我们平时开发时最常用到的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成各种建表、増删改查的操作。转载 2023-10-04 12:10:15 · 230 阅读 · 0 评论 -
Android数据库高手秘籍(八)——使用LitePal的聚合函数
在SQL语句当中,有一种查询是比较特殊的,就是聚合函数查询,它不像传统查询一样是将表中的某些列的数据查询出来,而是将查询结果进行聚合和统计,最终将统计后的结果进行返回。因此,任何一个关系型数据库中都会提供像count()、sum()等聚合函数。那么不出你所料,LitePal当中也是对这些聚合函数都进行了封装,让我们的操作可以变得更加简单。转载 2023-10-04 13:56:43 · 128 阅读 · 0 评论 -
Android数据库高手秘籍(三)——使用LitePal升级表
这大概就是传统开发当中升级数据库表的方式了,虽说能写出这样的代码表示你已经对数据库的升级操作理解的比较清楚了,但随着版本越来越多,onUpgrade()方法中的逻辑也会变得愈发复杂,稍微一不留神,也许就会产生错误。这对于第一次安装我们软件的用户来说是完全可以正常工作的,但是如果有的用户已经安装过上一版的软件,那么很遗憾,comment表是创建不出来的,因为之前数据库就已经创建过了,onCreate()方法是不会重新执行的。其它的一些升级操作也都是类似的,相信你已经能举一反三,这里就不再赘述了。转载 2023-10-04 12:22:33 · 147 阅读 · 0 评论 -
Android数据库高手秘籍(七)——体验LitePal的查询艺术
激进查询的用法非常简单,就只有这么多,其它find()方法也都是同样的用法,就不再重复介绍了。可以看到,这里我们又添加了一个offset()方法,用于指定查询结果的偏移量,这里指定成10,就表示偏移十个位置,那么原来是查询前10条新闻的,偏移了十个位置之后,就变成了查询第11到第20条新闻了,如果偏移量是20,那就表示查询第21到第30条新闻,以此类推。不过,上述我们的所有用法中,都只能是查询到指定表中的数据而已,关联表中数据是无法查到的,因为LitePal默认的模式就是懒查询,当然这也是推荐的查询方式。转载 2023-10-04 13:43:20 · 399 阅读 · 0 评论