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();
            }

  • 相关阅读:
    java中浮点数的比较(double, float)(转)
    SVN与TortoiseSVN实战:补丁详解(转)
    常见名词解析
    SSL连接建立过程分析(1)
    Flash-使用变形面板制作花朵
    使用ReactiveCocoa实现iOS平台响应式编程
    【LaTeX排版】LaTeX论文排版<三>
    angularjs入门学习【指令篇】
    理解class.forName()
    malloc()与calloc差别
  • 原文地址:https://www.cnblogs.com/bobshieh/p/5149398.html
Copyright © 2011-2022 走看看