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

  • 相关阅读:
    个人作业8 单词统计
    个人作业7 第一阶段SCRUM冲刺(八)
    大二暑假周总结(二)
    大二暑假周总结(一)
    梦断代码-阅读笔记03
    个人课程总结
    梦断代码-阅读笔记02
    大二下周总结(16)
    梦断代码-阅读笔记01
    最长英语单词链
  • 原文地址:https://www.cnblogs.com/bobshieh/p/5149398.html
Copyright © 2011-2022 走看看