Android SQLite lekérdezés nem ad vissza oszlop értékei

szavazat
0

Nem vagyok képes felvenni olvasni az adatokat a következő SQLite válasszuk lekérdezés funkció. Van egy asztal 3 oszlopot, azaz driverID, driversName, driversNo.

Úgy kéne, hogy visszatérjen az egyszerű karaktersorozat, de sajnos.

public String readDrivers() {
Cursor cursor = database.query(MySQLiteHelper.PROFILE_TABLE_NAME, necessaryColumns, null, null, null, null, null);

if (cursor != null){
    cursor.moveToFirst();
    Log.v(TEST, Integer.toString(cursor.getCount()));
    Log.v(TEST, cursor.getColumnName(0));
    Log.v(TEST, cursor.getColumnName(1));
    Log.v(TEST, cursor.getString(0));
    Log.v(TEST, cursor.getString(1));
}

String returnString = cursor.getString(0) + cursor.getString(1);
return returnString;
}

Az alábbiakban a legfrissebb eredmények Logcat. A két húrok eredmények nem mutatnak fel.

08-04 20:27:35.271: V/TEST(25126): 1
08-04 20:27:35.271: V/TEST(25126): driversName
08-04 20:27:35.271: V/TEST(25126): driversNo
A kérdést 05/08/2014 07:09
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
1

probléma

cursor.getString(0) 

i azt hiszi, hogy int értéket így próbálja cursor.getInt (0)

Van néhány módszer, hogy az adatokat Cursour

       public String readDrivers() {
    Cursor cursor = database.query(MySQLiteHelper.PROFILE_TABLE_NAME, necessaryColumns, null, null, null, null, null);

    if (cursor != null){
        cursor.moveToFirst();
        Log.v("TEST", Integer.toString(cursor.getCount()));
        Log.v("TEST", cursor.getColumnName(0));
        Log.v("TEST", cursor.getColumnName(1));
        Log.v("TEST", cursor.getString(0));
        Log.v("TEST", cursor.getString(1));
    }

    String returnString = cursor.getString(0) + cursor.getString(1);
    //you suppose to get data from cursor like
   String temp = cursour.getString(cursour.getColumIndex("YOUR_COLUMN_NAME"));
   Log.i(TAG , "Required Data:: "+temp);
    return returnString;
}
Válaszolt 05/08/2014 07:21
a forrás felhasználó

szavazat
0

Próbálja ki a IsNull módszer, hogy ellenőrizze, ha az oszlop null

Mivel egyre kimenet cursor.getColumnName(0));, ez azt jelenti, az oszlop index 0 létezik. Tehát, cursor.getString(0)nem kell figyelembe venni egy hiba!

Lásd dokumentáció cursor.getString :

Azt mondja:

The result and whether this method throws an exception when the 
column value is null or the column type is not a string type 
is implementation-defined.
Válaszolt 05/08/2014 07:28
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more