SQLite Query Abfrage

  • Antworten:1
  • OffenNicht stickyBentwortet
  • Forum-Beiträge: 30

10.11.2015, 11:28:08 via Website

Hallo,

Ich möchte gerne folgende Daten NUR aus der Datenbank lesen wenn der Wert COL_FK_RID = null (also leer) ist. Wie mache Ich das? Ich habe bereits alles mir bekannte an Schreibweisen durch aber komme zu keinem Ergebnis. So zeigt er mir wenigstens alle Einträge an.

 public String getElementsWithoutRoom() {
    SQLiteDatabase db = this.getWritableDatabase();

    String allData = ("");


    Cursor dbCursor;

    try {
        dbCursor = db.query(TABLE_LISTELEMENT, new String[] {COL_LEID, COL_PRODUCT,
                        COL_LABEL, COL_SERIAL, COL_MAC, COL_DAAID, COL_BILL},
                null, null, null, null, null, null);

        dbCursor.getCount();
        int iid = dbCursor.getColumnIndex(COL_LEID);
        int iProduct = dbCursor.getColumnIndex(COL_PRODUCT);
        int iLabel = dbCursor.getColumnIndex(COL_LABEL);
        int iSerial = dbCursor.getColumnIndex(COL_SERIAL);
        int iMac = dbCursor.getColumnIndex(COL_MAC);
        int iDaaid = dbCursor.getColumnIndex(COL_DAAID);
        int iBill = dbCursor.getColumnIndex(COL_BILL);

        if (dbCursor.getCount()>0) {
            for (dbCursor.moveToFirst(); !dbCursor.isAfterLast(); dbCursor.moveToNext()) {
                allData = allData + dbCursor.getInt(iid)
                        + "\t" + dbCursor.getString(iProduct)
                        + "\t" + dbCursor.getString(iLabel) + "\t" + dbCursor.getString(iSerial)
                        + "\t" + dbCursor.getString(iMac) + "\t" + dbCursor.getString(iDaaid)
                        + "\t" + dbCursor.getString(iBill) + "\n";
            }
        }



    } catch (Exception e) {
        // TODO Auto-generated catch block
        //allData = "";
    }
    return allData;

}

Mein Table:

    public static final String SQL_CREATE_LE =
        "create table " + TABLE_LISTELEMENT + "(" +
                COL_LEID + " integer primary key autoincrement, " +
                COL_PRODUCT + " text, " +
                COL_LABEL + " text, " +
                COL_SERIAL + " text, " +
                COL_MAC + " text, " +
                COL_DAAID + " text, " +
                COL_BILL + " text, " +
                COL_FK_RID + " REFERENCES room(rid)" + ")";

Antworten
Gelöschter Account
  • Forum-Beiträge: 438

10.11.2015, 14:14:57 via Website

Als Bedingung "<spaltenname> is null" einfügen, z.B.

cursor = db.query(TABLE_LISTELEMENT, 
                  new String[] {COL_LEID, [...], COL_BILL}, 
                  "COL_FK_RID is null", 
                  null, null, null, null);

Aktuelles Entwicklungsprojekt: (thinking) Sudoku Dojo Free (lightbulb)
Ich freue mich über Tester/innen.

Col.Biernot

Antworten