zoukankan      html  css  js  c++  java
  • Android开发时,sqlite创建表成功,insert不报错,但没有数据插入的原因

    在android开发过程中,经常要通过sqlite来存储一些数据,这种应用应该是再平常不过了,但是有时难免一时疏忽,就会出现sqlite创建表成功,insert不报错,但没有数据插入。

    具体问题详见如下代码:

            Context ctx;
            SQLiteDatabase db = dbOpenHelper.getWritableDatabase();

            // 开启事务
            db.beginTransaction();
            try{
                    // 数据库操作
               for (...) {
                 // 插入数据
                          db.insert(table, values);
                    }
            
               // 设置事务标志为成功,当结束事务时就会提交事务
               //(一定要记得添加这句,否则就会出现insert成功,但数据库没数据)
                    db.setTransactionSuccessful();  
            }
            catch(Exception ex){
            
            } finally {
                    // 结束事务方法时会检查事务的标志是否为成功,
                    // 如果程序执行此方法之前调用了setTransactionSuccessful()方法设置事务的标志为成功则提交事务
                 // 如果没有调用setTransactionSuccessful() 方法则回滚事务。
                    db.endTransaction();
            }

  • 相关阅读:
    JS 原型模式 工厂模式 构造函数的区别
    JS 深入1
    理解DOM的一个例子
    Fuzzing参数
    神经网络相关知识和概念整理
    [转载] 系统、模型和仿真
    frp内网穿透,从外网访问内网资源
    常用软件配置
    141. 环形链表
    501. 二叉搜索树中的众数
  • 原文地址:https://www.cnblogs.com/bobshieh/p/5149398.html
Copyright © 2011-2022 走看看