| |||||||
Das Thema "Mehre Daten in SQL-Datenbank| einzelne Zeile aus Datenbank löschen" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer Benutzer Registriert seit: 31.05.2011
Beiträge: 29
Abgegebene Danke: 11
Erhielt 0 Danke für 0 Beiträge
| ich habe ein paar Probleme mit dem Speichern in eine SQL Datenbank oder mit der Datenbank an sich. Ich habe normal eine Tabelle in der Datenbank erstellt. Nun sieht meine App so aus, dass ich anfangs nur einen EditText hatte. Die eingebenen Sachen sollen in der Datenbank gespeichert werden. Später sollen diese Daten durch einen Button-Klick in einer ListView andgezeigt werden. Dies funktioniert auch wunderbar. Doch nun habe ich bei meiner folgenden Arbeit Probleme: 1) Da ich nun aber 2 EditTexte einbauen wollte, stellt sich mir die Frage, wie ich dies mache. Anfangs habe ich weitere Spalten in der Datenbank erstellt: Code: private static final String KLASSEN_CREATE = "create table klassen (_id integer primary key autoincrement, "
+ "name text not null, preis text not null);"; Code: private void ladeDaten() {
Cursor klassenCursor = mDatenbank.rawQuery(KLASSEN_SELECT_RAW, null);
startManagingCursor(klassenCursor);
SimpleCursorAdapter klassenAdapter = new SimpleCursorAdapter(this,
android.R.layout.two_line_list_item,
klassenCursor,
new String[]{ "name","preis"},
new int[]{android.R.id.text1, android.R.id.text2});
setListAdapter(klassenAdapter); Code: private static final String KLASSEN_SELECT_RAW = "SELECT _id, name FROM klassen, preis FROM klassen"; Ich weiß nicht, ob das wichtig ist, aber so versuche ich die Daten aus den EditTexten in die Datenbank zu speichern: Code: artikel = (EditText)findViewById(R.id.artikel);
preis = (EditText)findViewById(R.id.preis);
ContentValues werte = new ContentValues();
werte.put("name", artikel.getText().toString());
werte.put("preis", preis.getText().toString());
mDatenbank.insert("klassen", null, werte);
ladeDaten(); zum 2.Problem: Ich habe einen OnItemClickListener dem ListView hinzugefügt. Nun soll auf einen Klick ein AlertDialog starten, funktioniert auch soweit. Nun möchte ich, dass man dieses "item" aus der ListView, also aus der Datenbank löscht. Da die Daten ja durch EditTexte ausgelesen werden, weiß ich die id der Zeile bzw. finde ich keine Lösung dafür, um diese herauszufinden. Logischerweise möchte ich dann diese Zeile aus der Datenbank löschen. Doch leider weiß ich auch da nicht, wie ich das anstellen soll, da ich noch nicht so oft mit ner Datenbank gearbeitet habe. Ich hoffe das war nicht zu viel und ich hoffe, dass ihr mein Problem verstanden habt::-P Vielen Dank schonmal für eure Hilfe ![]() Gruß Nivel |
| | |
| | #2 (permalink) |
| Android Guru Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
|
"Als Fehler kommt immer Source not found." was meinst du damit genau?? eine vermutung: lösche die app mal vom händy und installier sie neu. macht das was besser?
__________________ App Entwicklung Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD ) |
| | |
| Folgender Benutzer bedankt sich bei swordi für diesen Beitrag: | Nivel (11.07.2011) |
| | #3 (permalink) | ||
| Neuer Benutzer Registriert seit: 31.05.2011
Beiträge: 29
Abgegebene Danke: 11
Erhielt 0 Danke für 0 Beiträge
|
Also ich habs mal getestet, leider ohne Erfolg. Kommt immernoch derselbe Fehler. Ich habe einfach mal Screenshots gemacht. Zitat:
Zitat:
| ||
| | |
| | #4 (permalink) | |
| Ehren-Mitglied Modell: HTC Desire Registriert seit: 21.07.2009
Beiträge: 9.876
Abgegebene Danke: 93
Erhielt 1.785 Danke für 1.389 Beiträge
| Zitat:
EDIT: Name ist ein ungünstiger Spaltenname, da er oft intern belegt ist. Dann müsstest du [name] schreiben.
__________________ Thyrion Siemens C25 / Nokia 6510 / SE K700i / Samsung Galaxy I7500 (rooted) / HTC Desire (rooted / S-ON) Kein Support via PN und E-Mail. Bitte das Forum nutzen! Traut Euch, die Suche beißt nicht! - Android-Hilfe.de - Forenregeln - Eine Bitte an alle Android-Neulinge... Kein Punkt? Kein Komma? Keine Hilfe! schreibst du alles klein? dann sind deine shift-tasten aber ganz schön einsam. DRÜCK sie mal öfter! | |
| | |
| Folgender Benutzer bedankt sich bei Thyrion für diesen Beitrag: | Nivel (11.07.2011) |
| | #6 (permalink) |
| Ehren-Mitglied |
Der wird doch da nicht eine RuntimeException werfen. Was steht denn im logcat? Die Fehlermeldung mit dem "source not found" rührt übrigens daher, dass im Framework eine Exception fliegt und du keinen Source dafür hast. Vermutlich ist das Dokumentations-Package nicht installiert.
__________________ CyanogenMod 7 Nightly - AmonRa Recovery 2.0 - Nexus One Kein Support via PN und E-Mail. Bitte das Forum nutzen. "Es ist Mode geworden, die Freiheitsrechte des Bürgers in den Mittelpunkt zu stellen." - Siegfried Kauder |
| | |
| Folgender Benutzer bedankt sich bei Kranki für diesen Beitrag: | Nivel (11.07.2011) |
| | #7 (permalink) |
| Neuer Benutzer Registriert seit: 31.05.2011
Beiträge: 29
Abgegebene Danke: 11
Erhielt 0 Danke für 0 Beiträge
|
kann sehr gut sein, wie mache ich das denn? ich hab mir mal LogCat angeschaut und da kommt folgender fehler, der etwas mit der SQL Datenbank zu tun hat. ![]() das bedeutet ja, dass er in der Datenbank-Klasse diese Spalte nicht erstellt...doch was habe ich falsch gemacht? ohh mist, habs geschafft. Danke an euch, ich musste, wie swordi schon sagte, einfach nochmal die Datenban löschen, damit sie neu erstellt werden kann mit der neuen Spalte. Somit wäre das erste Problem gelöst;-) Geändert von Nivel (12.07.2011 um 10:10 Uhr) |
| | |
| | #8 (permalink) |
| Neuer Benutzer Registriert seit: 31.05.2011
Beiträge: 29
Abgegebene Danke: 11
Erhielt 0 Danke für 0 Beiträge
|
Ich pushe ja nur ungern, aber wie ist das mit dem zweiten Problem? und wie bekomme ich überhaupt einzelne Daten aus der Tabelle, also über eine Java-Code?? |
| | |
| | #9 (permalink) |
| Android Guru Modell: T-Mobile G1, Nexus One, Samsung Galaxy Tab 10.1, Samsung Galaxy Nexus Registriert seit: 04.05.2009
Beiträge: 1.599
Abgegebene Danke: 128
Erhielt 210 Danke für 193 Beiträge
|
__________________ Follow/Add/Circle/Whatever me on Google+ Solitaire HD, ein Solitaire optimiert für Honeycomb. |
| | |
| Folgender Benutzer bedankt sich bei the_alien für diesen Beitrag: | Nivel (13.07.2011) |
| | #10 (permalink) |
| Neuer Benutzer Registriert seit: 31.05.2011
Beiträge: 29
Abgegebene Danke: 11
Erhielt 0 Danke für 0 Beiträge
|
das mit dem delete hatte ich auch...nur irgendwie muss ich ja die _id des Items aus der Listview finden, da ich auf einen Klick darauf dieses löschen möchte.
|
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| SQlite : Datenbank verschlüsselt oder keine gültige Datenbank | RED-BARON | Android App Entwicklung | 0 | 07.04.2011 11:20 |
| [gelöst]Verbindung zu externer SQL Datenbank funktioniert nicht // InputStream error | rufux | Android App Entwicklung | 0 | 17.03.2011 09:43 |
| Daten aus MYSQL Datenbank auslesen | wiesel32 | Android App Entwicklung | 13 | 12.08.2010 13:45 |
| Daten aus der Datenbank ohne Cursor? | method1545 | Android App Entwicklung | 7 | 19.10.2009 17:48 |
| SQL Lite Datenbank + ListView | pgnonick | Android App Entwicklung | 26 | 28.08.2009 13:14 |