官方Github地址:
https://github.com/LitePalFramework/LitePal

本文章开源Demo地址:
https://github.com/EverZc/SQLitePal

使用:
首先配置AndroidManifest.xml

android:name="org.litepal.LitePalApplication"

assets文件夹中新建XML文件

<?xml version="1.0" encoding="utf-8"?>
<litepal><dbname value="BookStore"></dbname><version value="1"></version><list><!--映射表--><mapping class="com.zc.myapplication.BookTable"></mapping></list>
</litepal>

创建表

  Connector.getDatabase();

升级数据库的时候 只需要在Util中直接添加想要的列就可以. LitePal会自行保存之前的数据的.

添加数据
首先让表继承 DataSupport

                Book book=new Book();book.setName("西游记");book.setAuthor("吴承恩");book.setPages(456);book.setPrice(16.96);book.setPress("未知");//调用此方法完成添加数据操作book.save();

更新数据

                Book book=new Book();book.setPrice(19.666);book.setPress("中华出版社");//约束条件 类似于wherebook.updateAll("name=? and author=?","钢铁是怎样练成的","奥斯托洛夫斯基");

删除数据

//删除有约束条件的数据DataSupport.deleteAll(Book.class,"price<?","18");//删除ID为2的数据DataSupport.delete(Book.class, 2);//删除整个表的数据DataSupport.delete(Book.class);

查询数据

List<Book> books=DataSupport.findAll(Book.class);for (Book book:books){Log.d("------",book.getName());Log.d("------",book.getAuthor());Log.d("------",book.getPress());Log.d("------", String.valueOf(book.getPrice()));Log.d("------", String.valueOf(book.getPages()));}//查询表第一个数据Book first=DataSupport.findFirst(Book.class);//查询表最后一个数据Book last=DataSupport.findLast(Book.class);Log.e("------", first.toString());Log.e("------", last.toString());//查询哪几列的数据,对应SQL关键字selectList<Book> books=DataSupport.select("name","author").find(Book.class);//where方法用于指定查询的约束条件 对应SQL关键字whereList<Book> books1=DataSupport.where("pages>?","400").find(Book.class);//order 用于指定结果的排序方式  desc表示降序  asc或者默认表示升序List<Book> books2=DataSupport.order("price desc").find(Book.class);//limit 方法用于指定查询结果的数量 例如如下查询3条List<Book> books3=DataSupport.limit(3).find(Book.class);//offset()用于指定查询结果的偏移量,比如查询第2 3 4条数据List<Book> books4=DataSupport.limit(3).offset(1).find(Book.class);//任意组合一个List<Book> books5=DataSupport.select("name","pages").where("pages>?","400").order("pages").limit(10).offset(10).find(Book.class);

SQLite开源库LitePal相关推荐

  1. android button 添加事件_2019最新Android常用开源库总结

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...

  2. Android 优秀的开源库

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...

  3. Android常用的第三方开源库和框架

    第三方开源库和组件 一个专注于平滑滚动的Android图像加载和缓存库 https://github.com/bumptech/glide 图片缓存Universal-Image-Loader: ht ...

  4. 2019最新Android常用开源库总结(From:知乎)

    文章目录 一 .基本控件 **TextView** **EditText** **ImageView** **Button** **Spinner** **CheckBox** **ProgressB ...

  5. 最新最全 Android 常用开源库总结

    点击上方"码农突围",马上关注这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看" ...

  6. android view设置按钮颜色_建议收藏!最全 Android 常用开源库总结!

    作者 |  i小灰地址 |  https://www.jianshu.com/p/3fde87405411 前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关 ...

  7. Android 常用开源库总结-2020年

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...

  8. 2020Android开发常用的开源框架、开源库

    前言 作为一名优秀的程序员,熟练的掌握一些开源框架和开源库,能使你的开发效率倍增,以下是Android开发中比较常用到的开源框架和库. TextView HTextView 一款支持TextView文 ...

  9. 2019最新Android常用开源库总结

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...

  10. 2019最新Android常用开源库总结(附带github链接)

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 1.TextView HTextView ...

最新文章

  1. 使用for循环遍历文件
  2. Android 实现TextView后面跟随一个高度和宽度固定的ImageView
  3. 【ARM】Tiny4412裸板编程之静态库(libc.a)
  4. Django框架实现支付宝第三方支付
  5. 你们计算机专业的学生应该看看这篇文章
  6. 关于开源中国手机App的说明
  7. 房子值500万租金仅3500元,卖房拿利息和出租哪个合算?
  8. 一个SQL SERVER功能模块表
  9. 21天学通JAVA:类的定义和对象的创建
  10. 周报_2011第40周(2011/09/25-2011/10/01)
  11. sympy 求微分方程_Sympy笔记一
  12. HBase权威指南阅读——第一章
  13. BUUCTF_Misc(后续更新....)
  14. 基于MATLAB的疲劳检测
  15. 亦余心之所善兮,虽九死其犹未悔
  16. uniapp , 微信小程序 图片加载时闪烁
  17. 股权登记日和除权除息日
  18. 替换单词c语言程序,用c语言完成单词替换
  19. ES生命周期管理 配置ilm策略
  20. win7系统 将 IE11 改为 IE8

热门文章

  1. css交集选择器的使用
  2. 介绍身份证号姓名实名认证 身份证号姓名校验 身份证号验人API
  3. 通知 Notification的介绍,以及自定义通知
  4. 强化理解指针、指针数组和数组指针(从三味书屋到成华大道)
  5. linux ftp 取文件,linux下拉取文件的方法
  6. JS模块化编程 - 一文看懂Common.js,AMD,CMD,ES6之间的区别和使用
  7. 蚂蚁安全键盘空白或应该显示安全键盘却显示的系统键盘的问题(iOS中时间佛历如何转换为公历)
  8. PHP中数组实际占用内存大小的分析
  9. 【无标题】【光纤光缆小知识】多模光纤的分类及应用
  10. java开发常用软件下载地址及教程。