Probleme mit Cursor

ensacom

ensacom

Ambitioniertes Mitglied
6
Hallo, mit folgendem source lese ich eine Zeile aus einer Datenbank aus.
Laut myCursor.getCount() wurde auch was gefunden nur sobald ich mit myCursor.getString(1) den namen des gefundenen Artikels aus der Datenbank ausgeben lassen will, stürzt mein Programm immer ab.

Was mache ich falsch?

Code:
long l = getIntent().getExtras().getLong("id");
myDB = this.openOrCreateDatabase(TankPro2.MY_DATABASE_NAME, MODE_PRIVATE, null);    
Cursor myCursor = myDB.rawQuery("SELECT name, model FROM " + TankPro2.MY_DATABASE_TABLE + " WHERE _id = "+l+";", null);        
startManagingCursor(myCursor);
            
Toast toast = Toast.makeText(this, myCursor.getString(1), Toast.LENGTH_SHORT);
toast.show();
 
Ich habe die Lösung gefunden.

Code:
if(getIntent().hasExtra("id") == true)
        {
            long l = getIntent().getExtras().getLong("id");
            
            myDB = this.openOrCreateDatabase(TankPro2.MY_DATABASE_NAME, MODE_PRIVATE, null);    
            Cursor myCursor = myDB.rawQuery("SELECT name, model, bemerkungen, kraftstoffart, tankinhalt FROM " + TankPro2.MY_DATABASE_TABLE + " WHERE _id = "+l+";", null);        
            startManagingCursor(myCursor);
            
            int ColumnName = myCursor.getColumnIndex("name"); 
            int ColumnModel = myCursor.getColumnIndex("model"); 
            int ColumnBemerkung = myCursor.getColumnIndex("bemerkungen"); 
            int ColumnKraftstoffarten = myCursor.getColumnIndex("kraftstoffarten"); 
            int ColumnTankinhalt = myCursor.getColumnIndex("tankinhalt"); 
        
            myCursor.moveToFirst();
            
            if (myCursor != null) {
                if (myCursor.isFirst()) { 
                    EditText eName = (EditText)findViewById(R.id.ed_KfzName);
                    eName.setText(myCursor.getString(ColumnName));
                    
                    EditText eModel = (EditText)findViewById(R.id.ed_KfzModel);
                    eModel.setText(myCursor.getString(ColumnModel));
                    
                    EditText eBemerkungen = (EditText)findViewById(R.id.ed_KfzBemerkung);
                    eBemerkungen.setText(myCursor.getString(ColumnBemerkung));
                    
                    Spinner sKraftstoffarten = (Spinner)findViewById(R.id.cb_KfzTreibstoffArt);
                    sKraftstoffarten.setSelection(myCursor.getInt(ColumnKraftstoffarten), true);
                    
                    EditText eTankinhalt = (EditText)findViewById(R.id.ed_KfzTankinhalt);
                    eTankinhalt.setText(myCursor.getString(ColumnTankinhalt));
                }
            }
        }
 

Ähnliche Themen

S
Antworten
4
Aufrufe
995
Sempervivum
S
R
Antworten
3
Aufrufe
1.633
Ritartet
R
B
Antworten
4
Aufrufe
496
bb321
B
Zurück
Oben Unten