2019独角兽企业重金招聘Python工程师标准>>>

使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事务处理应用:很多时候我们需要批量的向Sqlite中插入大量数据时,单独的使用添加方法导致应用响应缓慢, 因为sqlite插入数据的时候默认一条语句就是一个事务,有多少条数据就有多少次磁盘操作。如初始8000条记录也就是要8000次读写磁盘操作。同时也是为了保证数据的一致性,避免出现数据缺失等情况。

SQLiteDatabase db = dbOpenHelper.getWritableDatabase();

//开启事务

db.beginTransaction();

try{

//批量处理操作

//do something

db.execSQL("SQL语句", new Object[]{});

db.execSQL("SQL语句", new Object[]{});

//设置事务标志为成功,当结束事务时就会提交事务

db.setTransactionSuccessful();

}

catch(Exception e){

}

finally{

//结束事务

db.endTransaction();

}

转载于:https://my.oschina.net/u/1014520/blog/192410

Android开发中的SQLite事务处理,即beginTransaction()方法相关推荐

  1. Android开发中的SQLite事务处理,即beginTransaction()方法...

    以下是Android API的官方注解 beginTransaction Added in API level 1 void beginTransaction () Begins a transact ...

  2. Android开发中保存数据的四种方法方法

    本文来自:安卓航班网 在Android开发中我们会接触到四种数据存储方式,每种存储方式都各有不同:以下安卓航班分别列举了Android开发中的不同存储方式的特点. 一,Preferences Pref ...

  3. Android 开发中一些很有用但你不知道的方法

    English_Version:https://github.com/jiang111/awesome-android-tips/blob/master/README-en.md这里收集了大家常用的一 ...

  4. android开发中遇到的异常及解决方法

    每次运行项目,可能因为粗心或者哪一行代码没有调用,会导致项目不能运行,出现异常. 以下就是我总结的各种异常,会一直更新. 1. Unable to find explicit activity cla ...

  5. Android开发中完全退出程序的三种方法

    Android程序有很多Activity,比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序呢? 这里给大家三种比较简单的方法实现. 首先要说明在B中直接使用finish(),接 ...

  6. Android 开发中使用Intent传递数据的方法

    Activity之间通过Intent传递值,支持基本数据类型和String对象及它们的数组对象byte.byte[].char.char[].boolean.boolean[].short.short ...

  7. android代码实现手机加速功能吗,详解Android开发中硬件加速支持的使用方法

    Android从3.0(API Level 11)开始,在绘制View的时候支持硬件加速,充分利用GPU的特性,使得绘制更加平滑,但是会多消耗一些内存. 开启或关闭硬件加速: 由于硬件加速自身并非完美 ...

  8. sqlite数据库android使用教程,Android开发教程之 SQLite数据库的使用

    在开发Android应用程序时经常需要存储数据,Android系统提供了SQLite数据库,还提供了SQLiteOpenHelper类,使我们可以很方便的操作数据库.通过一个例子来说明在Android ...

  9. 安卓视频开发 mysql_在Android应用中使用SQLite数据库(传智播客视频笔记)

    在Android应用中使用SQLite数据库 应用生成的数据库文件保存为/data/data/应用包名/databases/name.db,生成的文件可用SQLite Expert打开 (name是自 ...

  10. SQLite数据库及在Android开发中的基本使用

    SQLite数据库及在Android开发中的基本使用 SQLite数据库的特点 轻量级数据库,无需搭建服务器. SQLite环境配置 这里提供从官网下载的方法,如果有Android Studio的项目 ...

最新文章

  1. 已调信号波形是怎样的_【鼎阳硬件智库原创 | 测试测量】初识任意波形发生器...
  2. 干货!任正非对话美国科技思想家,都说了些什么
  3. oracle日期导出mysql_oracle的数据导入到mysql中,遇到一个时间转换问题
  4. Maven内置属性及使用
  5. union all动态表_Excel VBA——动态显示图表
  6. Java临时缓存API –测试早期草案评审RI
  7. 一加8 Pro或将配备120Hz刷新率屏幕
  8. 华为平板matepad pro鸿蒙,华为MatePad Pro 2平板电脑入网:首款预装鸿蒙OS
  9. DNS练习之反向解析
  10. matlab 非线性方程组画图,使用matlab进行非线性方程组求解
  11. 【GoLang】GO语言系列--002.GO语言基础
  12. (转)mysql中InnoDB表为什么要建议用自增列做主键
  13. 函数在某点附近有界,但该点无极限值的例子
  14. win7无线局域网_局域网共享一键修复 19.3.13(推荐更新)
  15. 是HTML+CSS的学习笔记捏
  16. android系统应用更改内存,安卓root后必备神器:修改系统/清理内存神器
  17. Ubuntu16.04运行LSD-SLAM
  18. Oracle 基本语句语法
  19. Ural_1671. Anansi's Cobweb(并查集)
  20. (小程序) 客户签名及签名后页面整体转图片后上传

热门文章

  1. 信息检索评价标准计算
  2. coco数据集大小分类_COCO数据集的简单介绍
  3. 数据结构和算法liuyubobo_C++,java算法与数据结构-某课网价值166元实战教程
  4. android.mk ndk编译选项优化,Android NDK(ARM开发)使用NEON优化 - Fla
  5. 力扣-525 连续数组
  6. 蓝桥杯2019年第十届C/C++省赛C组第四题-质数
  7. linux驱动中使用定时器的设置
  8. 【模板】 线段树(部分功能)
  9. nodejs接收前端formData数据
  10. MyBatis基础入门《十七》动态SQL