【问题标题】:Adding to Sqlite Database While looping through ArrayList在遍历 ArrayList 时添加到 Sqlite 数据库
【发布时间】:2012-11-29 15:39:48
【问题描述】:

我有一个简单的预算程序,允许您按下发薪日按钮,该按钮将通过预算制定时设置的金额增加预算中的当前金额。我无法从数组列表中获取值,同时仍然能够将它们准确地添加到数据库中,这就是我到目前为止所拥有的

        for(String amount: pds)
        {
            t2.put(KEY_AMOUNT, amount);
        }

        for(String Id: bIds)
        {
            t2.put(KEY_TRANSACTION,a);
            t2.put(KEY_DATE, date);
            t2.put(KEY_CATEGORYID, Id);
        }

        ourDatabase.insert(DATABASE_TABLE2,null,t2);
        return ourDatabase;

所有这些都是将最后一个值放入每个列表中。我尝试了其他几种方法,但无法正确 任何和所有的帮助都非常受欢迎

【问题讨论】:

    标签: android sqlite arraylist


    【解决方案1】:

    我假设 t2 是一个 ContentValues 对象。它们对每个键都有一个值,因此将键设置 12 次只会覆盖每次。如果您想为每个值创建不同的记录,则需要在每个值之后插入。如果您希望将它们加入到 CSV 列表或其他内容中,则需要使用 TextUtils 连接方法来连接这些值。如果您这样做,请确保您的列类型为 TEXT

    【讨论】:

    • 感谢您的帮助,我通过改变 for 循环并在 t2 再次运行循环之前插入来修复它
    • 如果你想让它更快,在你开始循环之前打开一个事务,在你完成数据库交互之后结束它。如果您只进行一个或 2 个数据库操作,这并没有太大的区别,但是如果您正在遍历一堆,它会为您节省相当多的时间。
    猜你喜欢
    • 2014-02-01
    • 2015-11-16
    • 1970-01-01
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 2014-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多