一尘不染

数据未插入SQLite DB

sql

我有一个问题,其中数据没有插入到数据库中,因为错误日志说不存在名为columntotal的列,这是正确的,但是columntotal是我试图传递到列中称为“购买”的表中的变量称为“总计”。我的插入语句构造错误吗?

public double calculateTotal() {
    double columntotal = 0;
    Cursor cursor1 = db.rawQuery(
    "SELECT SUM(price) FROM purchases", null);
    if(cursor1.moveToFirst()) {
        columntotal = cursor1.getDouble(0);
    }
    cursor1.close();

    return columntotal;
}

public void insertTotal() {
    db.rawQuery("INSERT INTO purchases(total) VALUES(columntotal)", null);
}

阅读 168

收藏
2021-05-16

共1个答案

一尘不染

是的,这是错误的。这是管理此问题的一种方法:

String sql = "INSERT INTO purchases(total)"
           + "VALUES ( ?)";
db.execSQL(sql, new String[]{YOUR_VALUE});
2021-05-16