2013-12-19 4 views
0

오류 로그에 columntotal이라는 열이 없다는 사실이 표시되기 때문에 데이터가 DB에 삽입되지 않는 문제가 있습니다. 이는 사실이지만 columntotal은 전달하려고하는 변수입니다 "total"이라는 컬럼에서 "purchases"라는 테이블. 삽입 문을 잘못 작성 했습니까?데이터가 SQLite DB에 삽입되지 않음

String insertQuery = "INSERT INTO purchases(total)" 
     + "VALUES (?)"; 

를 한 다음이 쿼리를 실행 :

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); 
} 
+2

'INSERT'는 쿼리가 아닙니다. 'execSQL'을 사용하십시오. –

답변

3

네, 잘못되었습니다. 그것은 이것을 관리하는 한 가지 방법입니다 :

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

답장을 보내 주셔서 감사합니다. 이것은 대단히 도움이되었습니다! – user3116503

0

먼저 문자열을 구축해야합니다.

+0

도움 주셔서 감사합니다. – user3116503

관련 문제