我遇到了從我的SQLite
數據庫中正確地求和浮動數據的問題。我已經創建了我的表,如下所示,我通過String sql4將'amount'列設置爲FLOAT。從SQLite數據庫爲Android應用程序彙總浮動數據庫
我有一個EditText
'值',其中用戶輸入一個值,然後通過ContentValues
cv2輸入到數據庫中。
所有這些工作正常,當我從外部檢查數據庫時記錄十進制值。然而,當我嘗試通過mCursor1檢索它時,輸出顯示爲9.0而不是9.18,之後我進行了兩次連續輸入2.21和6.97 ...... .. 但是,當我將數據輸出到xml文件中並在Excel中添加我達到了9.18。這會讓我相信它一定是由於mCursor1而引起的,但我只是在猜測。 任何想法,我的問題在哪裏?
String sql4 = "create table tracker (_id INTEGER PRIMARY KEY " +
"AUTOINCREMENT, category_name TEXT NOT NULL, date DATE NOT NULL, place NUMERIC NOT NULL," +
"amount FLOAT NOT NULL, day_id INTEGER NOT NULL, week_id INTEGER NOT NULL," +
"month_id INTEGER NOT NULL, year_id INTEGER NOT NULL)";
ContentValues cv2 = new ContentValues();
cv2.put("amount", value.getText().toString());
mDb.insert("tracker", null, cv2);
float total1 = 0;
mCursor1 = mDb.rawQuery(
"SELECT SUM(amount) FROM tracker", null);
if(mCursor1.moveToFirst()) {
total1 = mCursor1.getInt(0);
}
mCursor1.close();
String a = Float.toString((float)total1);
displayTotal.setText("Total €" + a);
不要使用浮動貨幣。 – joey