Daten aus der Datenbank ohne Cursor?

M

method1545

Neues Mitglied
0
Hallo,

ich dachte eigentlich es wäre kein Problem aber irgendwie scheine ich es nicht hinzukriegen.

Ich mag einfach Daten aus einer Datenbank lesen ohne einen Cursor den ich dann irgendwo dran hänge (z.b. ne ListActivity).

Hab ne Tabelle Person mit Name und Vorname und will nun alle Einträge in meiner Javawelt in der "Hand" haben.

Hat jemand Erfahrungen damit?
 
naja wie soll das ohne cursor gehen??

du musst alle selectieren über ein query. dann bekommst du die ganzen datensätze und mittels cursor gehst du dann alle durch und speicherst die daten in deine javawelt objekte ;)
 
ok also doch cursor :)

könntest du mir dabei helfen die daten in dem cursor zu finden?
vielleicht hört sich das extrem doof an aber ich find die datensätze nirgends im/am cursor.

war mit dem debugger dran aber nirgends sah ich meine Personen-Daten :)

mein code sieht momentan so aus: spinner ist allerdings leer.

Code:
private void fillSpinner()
	{

		Cursor spinnerCursor = mDbHelper.fetchAllPersons();

		if (spinnerCursor != null)
		{
			startManagingCursor(spinnerCursor);


			String[] names = new String[]
			{ PersonDbAdapter.KEY_FIRSTNAME };

			int[] to = new int[]
			{ android.R.layout.simple_spinner_item };

			
			SimpleCursorAdapter itemsAdapter = new SimpleCursorAdapter(this,
					android.R.layout.simple_spinner_item, spinnerCursor, names,
					to);

			// itemsAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
			mPersonSpinner.setAdapter(itemsAdapter);
			// itemsAdapter.bindView(mDriverSpinner, this, spinnerCursor);
		} else
		{
			Toast.makeText(this, "error: items cursor is null",
					Toast.LENGTH_SHORT);
		}
	}
 
hmm du musst dich mal damit beschäftigen was ein cursor überhaupt ist.

er haltet für dich sämtliche datensätze, die du angefordert hast. kleines beispiel:

select * From table;
ergebnis wäre zb

1 hallo 2.3
2 tschüss 1.1

dein cursor hält jetzt genau das

nun machst du folgendes

if (cursor != null) {
if (cursor.movetofirst()) {
do {
int id = cursor.getInt(0); /// 0 ist die 0te spalte der ergebnisreihe
String text = cursor.getString(1);
double amount = cursor.getDouble(2);
System.out.println(id + " " + text + " " + amount );
}while(cursor.moveToNext());
}
}

so arbeitet man mit cursorn
 
  • Danke
Reaktionen: method1545
super danke, das hilft mir weiter.
die tabellen indizes habe ich entdeckt im debugger.

danke sehr für den moment :)
 
kein problem
 
coole Sache. Der Spinner ist nun so wie ich ihn wollte :)
Es werden alle Einträge angezeigt und er aktualisiert sich falls ein neuer Eintrag getätigt wird.

Was mir nun noch fehlt ist etwas ala das Setzen von ID's zu den Spinnereinträgen, so dass ich nach einer Selektion des Users im Spinner Operationen starten kann mit den stimmigen ID's der Spinnereinträge.

Kann ich diese Spinnerreihen mit ID's besetzen?

Wenn nicht, hätte ich ne andere Lösung im Hinterkopf die ich aber gerne umgehen würde.
 
kennst du adapter???

schau dir mal bei google die hilfe zu adaptern an. denke das ist das was du brauchst.

ansonsten, musst du ja alle deine einträge vom spinner in einer best. listenartigen datenstruktur haben.

dort kannst du die position ermitteln und dem spinner sagen und umgekehrt.
 

Ähnliche Themen

S
Antworten
33
Aufrufe
2.540
Sempervivum
S
R
  • Robby1950
2
Antworten
23
Aufrufe
954
Robby1950
R
A
Antworten
10
Aufrufe
1.005
swa00
swa00
Zurück
Oben Unten