Sqlite DB没有返回数据

时间:2018-05-28 05:54:11

标签: android sqlite android-sqlite

我试图将一些数据插入到我的表中,即使它在我尝试选择所有数据时插入,db也没有返回任何数据。

这是我的代码:

这是我的DBHelper

public boolean insertTransaksi (String timestamp, String jenis_tiket, String jumlah_orang, String total_biaya, Integer status) {
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues contentValues = new ContentValues();
    contentValues.put("timestamp", timestamp);
    contentValues.put("jenis_tiket", jenis_tiket);
    contentValues.put("jumlah_orang", jumlah_orang);
    contentValues.put("total_biaya", total_biaya);
    contentValues.put("status", status);
    db.insert(TRANSAKSI_TABLE, null, contentValues);
    return true;
}

public ArrayList<String> getAllTransaksi() {
    ArrayList<String> array_list = new ArrayList<>();

    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor =  db.rawQuery( "select * from "+TRANSAKSI_TABLE, null );
    cursor.moveToFirst();

    while(!cursor.isAfterLast()){
        array_list.add(cursor.getString(cursor.getColumnIndex("jumlah_orang")));
        cursor.moveToNext();
    }
    return array_list;
}

这是我尝试插入和选择数据的地方:

                if(db.insertTransaksi(timestamp, jenistTiket, jumlah, tHarga, 0)){
                    System.out.println("inserted");
                    ArrayList allTransaksi = db.getAllTransaksi();
                    Iterator iter = allTransaksi.iterator();
                    while (iter.hasNext()) {
                        System.out.println(iter.next());
                    }
                }else{
                    System.out.println("fail insert");
                }
如果命令为true,则返回“插入”的logcat。请提前帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

使用

insert()

而不是Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.facebook.workchat"); if (launchIntent != null) { startActivity(launchIntent); } 并检查返回值,即新插入行的行ID。