当前位置: 首页 > 知识库问答 >
问题:

sqlite android中的多个insert语句

微生承业
2023-03-14

大家好,我有一个多个insert语句的问题,我需要插入许多记录。我用这种方式编写,但记录没有插入到“userbill”表中。帮帮我??

..代码如下:

    SQLiteDatabase db = mySQLiteHelper.getWritableDatabase();
    String sql = "insert into userbill (billid, userid, date, amount, bill_status) values (?, ?, ?, ?, ?)";

    db.beginTransaction();
    SQLiteStatement st = db.compileStatement(sql);

    try{
        for(int i=0;i<Userid.length;i++)
        {

                st.bindLong(1, billid);
                st.bindString(2, Userid[i]);
                st.bindString(3, due_date);
                st.bindDouble(4, amount/Userid.length);
                st.bindString(5, "Due");

                long entryID = st.executeInsert();
                st.clearBindings();
        }

       db.setTransactionSuccessful();
    }
    catch(Exception e)
    {
        //e.printStackTrace();
        Log.e("MYAPP", "exception", e);
    }
    finally
    {
        db.endTransaction();
    }
    db.close(); 

logcat:

09-05 13:12:48.610:D/DalvikVM(7982):GC_FOR_ALLOC释放314K,10%释放5030K/5568K,暂停17ms,共18ms

09-05 13:12:48.610:I/dalvikvm-heap(7982):将heap(frag case)增长到6.181MB,用于1127532字节的分配

09-05 13:12:57.014:I/SQLiteConnectionPool(7982):/data/data/com.perfect12.app2maintation/databases/amtdb的连接池已关闭,但仍有1个连接正在使用。当它们被释放回游泳池时,它们将被关闭。

09-05 13:12:57.286:W/EGL_GenyMotion(7982):eglSurfaceAttrib未实现

共有1个答案

廉学潞
2023-03-14

你写

db.beginTransaction();

在你的代码里两次。

 类似资料:
  • 问题内容: 这合法吗? 问题答案: 对于它的价值,并取决于是否将相同的数据插入到相同的表中,最好用一个插入插入多个值, 例如

  • 问题内容: 我正在尝试优化将数据插入MySQL的代码的一部分。我应该将INSERT链接起来以制作一个巨大的多行INSERT还是更快地使用多个单独的INSERT? 问题答案: https://dev.mysql.com/doc/refman/8.0/zh-CN/insert- optimization.html 插入行所需的时间由以下因素决定,其中数字表示近似比例: 连接:(3) 向服务器发送查询:

  • 打开和关闭连接: 注册用户 错误消息 '/'应用程序中的服务器错误。 INSERT INTO语句中存在语法错误。 描述:在执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中的起源的更多信息。 异常详细信息:系统。数据。OleDb。OleDbException:INSERT INTO语句中的语法错误。 源错误: 第100行:命令。ExecuteNonQuery();第1

  • 问题内容: 如果我通过执行单个记录插入的循环插入多个记录,则按预期返回的最后一个插入id是最后一个。但是,如果我执行多条记录插入语句: 假设上面的三个是插入表中的第一条记录。在插入语句之后,我希望最后一个插入ID返回3,但返回1。有关语句的第一个插入ID。 所以有人可以确认这是否是在多条记录INSERT语句的上下文中的正常行为。因此,我可以将代码作为基础。 问题答案: 是。这种行为是在MySQL的

  • 问题内容: 如何查询这两个?我将数据插入两个表中。 问题答案: 目的是什么?您是否要从一种HTML表单将数据插入到两个不同的表中?我不知道存储过程,但是我在类似的情况下使用事务: 假设在表中是FK,并且是自动递增字段。我有一个名为dbSingle的类,其中包含查询功能和数据库连接。希望它足够清晰,可以与常规mysqli函数一起使用。

  • 主要内容:1.不指定列名,2.通过指定列名称SQL INSERT语句用于在表中插入单个或多个数据。 在SQL中,可以通过以下两种方式插入数据: 不指定列名称 通过指定列名称 假设有一个表: 的结构和数据记录如下 - EMP_ID EMP_NAME CITY SALARY AGE 1 Angelina Chicago 200000 30 2 Robert Austin 300000 26 3 Christian Denver 100000 4