我有一个问题,其中数据没有插入数据库中,因为错误日志说不存在名为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);
}

最佳答案

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

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

关于java - 数据未插入SQLite DB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20684962/

10-10 13:17