这也是通过Android Juint来实现的。

基于上一次的工程继续,上一次工程传送门:《Android–Android Juint 与 Sqlitehttp://www.cnblogs.com/yydcdut/p/3790579.html

更新数据库                                                                                   

  1. public PersonSQLite(Context context) {
  2. super(context, "person.db", null, 2);
  3. // TODO 自动生成的构造函数存根
  4. }
  5.  
  6. @Override
  7. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  8. // TODO 自动生成的方法存根
  9. System.out.println("数据库发生了变化!!");
  10. db.execSQL("alter table person add account varchar(20)");
  11. }

SQL处理类                                                                                

  1. public long addMoney(String name ,String number,int money)
  2. {
  3. SQLiteDatabase db = sqlite.getWritableDatabase();
  4. //db.execSQL("insert into person (name,number) values (?,?)", new Object[]{name,number});
  5. ContentValues values = new ContentValues();
  6. values.put("name", name);
  7. values.put("number", number);
  8. values.put("account", money);
  9. long id = db.insert("person", null, values);
  10. db.close();
  11. return id;
  12. }

测试                                                                                          

  1. //先添加数据
  2. public void testAddMoney()
  3. {
  4. PersonDao2 dao = new PersonDao2(getContext());
  5. dao.addMoney("wangwu", "123", 5000);
  6. dao.addMoney("zhangsan", "321", 2000);
  7. }
  8. //事务处理
  9. public void testTransaction()
  10. {
  11. PersonSQLite sqlite = new PersonSQLite(getContext());
  12. SQLiteDatabase db = sqlite.getWritableDatabase();
  13. db.beginTransaction();
  14. db.execSQL("update person set account=account-1000 where name = ?",new Object[]{"zhangsan"});
  15. db.execSQL("update person set account=account+1000 where name = ?",new Object[]{"wangwu"});
  16. db.endTransaction();
  17. db.close();
  18. }

我是天王盖地虎的分割线                                                                 

源代码:http://pan.baidu.com/s/1dD1Qx01

SQLite2.zip

转载请注明出处:http://www.cnblogs.com/yydcdut

Android -- Sqlite事务的更多相关文章

  1. Android入门(十二)SQLite事务、升级数据库

    原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...

  2. Android——SQLite数据库(二)升级数据库、增、删、改、查、事务

    xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android= ...

  3. Android Sqlite 数据库版本更新

      Android Sqlite 数据库版本更新 http://87426628.blog.163.com/blog/static/6069361820131069485844/ 1.自己写一个类继承 ...

  4. android: SQLite 数据库的最佳实践

    6.5.1    使用事务 前面我们已经知道,SQLite 数据库是支持事务的,事务的特性可以保证让某一系列的操 作要么全部完成,要么一个都不会完成.那么在什么情况下才需要使用事务呢?想象以下场 景, ...

  5. Android SQLite 数据库 增删改查操作

    Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...

  6. Android SQLite总结[转载]

    [转载] :http://blog.163.com/zqy216_2008/blog/static/4119371820119954812509/ 最近在做的项目涉及到了SQLite,大学时没有好好学 ...

  7. [转]android sqlite db-journal文件产生原因及说明 .

    http://blog.csdn.net/kaiwii/article/details/8609093 今天在android中将sqlite的数据库文件生成在SD卡上的过程中,发现生成的.db文件的旁 ...

  8. 再读Android sqlite

    再读Android sqlite Android原生支持sqlite数据库操作,sqlite时轻量级关系型数据库,支持标准sql语句.Android对sqlite进行良好的接口封装来避免sql注入等安 ...

  9. Android SQLite 通配符查询找不到参数问题

    使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时 SQLiteDatabase db = d ...

随机推荐

  1. thinkphp5.0自动加载

    概述 ThinkPHP5.0 真正实现了按需加载,所有类库采用自动加载机制,并且支持类库映射和composer类库的自动加载. 自动加载的实现由think\Loader类库完成,自动加载规范符合PHP ...

  2. 洛谷P3857 [TJOI2008]彩灯 [线性基]

    题目传送门 彩灯 题目描述 Peter女朋友的生日快到了,他亲自设计了一组彩灯,想给女朋友一个惊喜.已知一组彩灯是由一排N个独立的灯泡构成的,并且有M个开关控制它们.从数学的角度看,这一排彩灯的任何一 ...

  3. hihocoder #1580 : Matrix (DP)

    #1580 : Matrix 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 Once upon a time, there was a little dog YK. On ...

  4. Windows下Wireshark安装版本选择方式

    Windows下Wireshark安装版本选择方式   Wireshark版本分为1.X系列和2.X系列.1.X系列是早期版本,不提供中文版本.2.X系列是新版本,安装后,同时提供中文版和英文版.根据 ...

  5. 修复mysql

    REPAIR TABLE TABLENAME 或 REPAIR TABLE TABLENAME USE_FRM

  6. [SPOJ SEQN] [hdu3439]Sequence

    题目就是求C(n,k)*H(n - k)%m 0<= k<= n <=10^9, 1 <= m <= 10^5, n != 0 其中H(n)是错排第n项. 对于C(n,k ...

  7. Java泛型应用总结

    一.泛型的引入原因 在操作集合的时候,之前方法的定义都是Object类型,向集合中添加对象,都自动向上转型,加入的元素可以是任何类型 但是,在取出元素的时候,通常想要使用对象的特有功能,就必须向下转型 ...

  8. POJ 2774 Long Long Message 后缀数组模板题

    题意 给定字符串A.B,求其最长公共子串 后缀数组模板题,求出height数组,判断sa[i]与sa[i-1]是否分属字符串A.B,统计答案即可. #include <cstdio> #i ...

  9. Educational Codeforces Round 10 B. z-sort 构造

    B. z-sort 题目连接: http://www.codeforces.com/contest/652/problem/B Description A student of z-school fo ...

  10. ROS知识(6)----基于Eclipse开发

    可以利用Eclipse集成开发环境进行ROS开发,从而提高研发效率.以色列巴尔伊兰大学的Mr. Roi Yehoshua开设了一门ROS课程,课程2( Lesson 2)讲解了如何利用Eclipse在 ...