android 之sqlite事务
来源:互联网 发布:淘宝的返利网 编辑:程序博客网 时间:2024/05/21 20:30
1.什么是事务?
事务产生的原因是由于事务的原子性导致的,事务的成功与否与逻辑与有点相似,都成功则事务为真反之亦然。
2。例子:
事务的运用非常广泛,比如在银行给别人汇款的时候,从A账户汇款到B账户,其中数据库层次的操作是
将A的余额减去汇款的余额然后B帐号再加上汇款的余额,如果在这一过程中出现了其他意外情况,比如断网、电 etc其他无法预知的错误时候,
A的余额和B的余额又该成为多少呢?这个时候就引入了事务。
3.sqlite demo:
package com.example.root.p120;import android.content.ContentValues;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MyHelper helper = new MyHelper(this); SQLiteDatabase db = helper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("f1",100); values.put("f2",200); db.insert("test",null,values); db.beginTransaction();//开始事务 try{ db.execSQL("update test set f1=101 where id=1"); db.execSQL("update test set f2=103 where id=1"); db.setTransactionSuccessful();//设置事务处理成功 }catch(Exception e){ Log.i("事务处理失败!",e.toString()); }finally{ db.endTransaction(); //关闭事务 db.close(); } }}class MyHelper extends SQLiteOpenHelper { public MyHelper(Context context){ super(context,"test.db",null,1); } public void onCreate(SQLiteDatabase db){ db.execSQL("create table test(id integer primary key autoincrement," + "f1 integer not null," + "f2 integer not null)"); } public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){ db.execSQL("alter table test add column f3 integer"); }}
阅读全文
0 0
- android 之sqlite事务
- Android Sqlite数据库之使用事务
- 12-SQLite之事务
- android sqlite 事务
- android sqlite 事务
- Android SQLite事务操作
- Android 关于SQLite事务
- Android--SQLite事务
- Android开发入门之在SQLite中使用事务
- android示例之SQLite基础——事务
- Android SQLite数据库应用之Prepared Statement、事务操作
- 一看就会Android之SQLite中事务的使用
- Android中的sqlite事务操作
- android 实现SQLite开启事务
- Android中SQLite使用事务
- android sqlite数据库的事务
- Android SQLite数据库—事务
- android sqlite CRUD 查询 事务
- modelsim仿真一直卡在loading之解决办法
- IDL中自定义过程与函数关键字参数说明
- Monte Carlo随机模拟
- linux内核调试技巧 dump_stack()
- 【PAT】【Advanced Level】1015. Reversible Primes (20)
- android 之sqlite事务
- 抽象代数学习笔记(6)群与子群
- 【Redis笔记】1.简介、安装启动(Ubuntu)
- 背包问题模板
- Glide加载圆形图片
- 自动化测试里的数据驱动和关键字驱动思路的理解
- 4515: 又见背包
- 【R语言学习笔记】二、数据可视化
- hdu 2601 An easy problem