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