Suche-Feld: Datenbank durchsuchen

  • Antworten:3
  • Bentwortet
Fiete
  • Forum-Beiträge: 25

14.02.2013, 09:15:04 via Website

Guten Morgen.
Ich hab eine App geschrieben (API10). Wobei einige Daten aus eine Datenbank in eine SQLite-DB aufs Handy kopiert werden, nun möchte ich diese DB bsz. einzelne Spalten von ihr, via einem editView durchsuchen.
Hier mein ansatz:

1DB_Manager mHelper= new DB_Manager(this);
2 mDatenbank = mHelper.getWritableDatabase();
3
4 Cursor data = mDatenbank.rawQuery("SELECT _ID as _id, CATEGORY, NAME, DESCRIPTION " +
5 "FROM tutorial " +
6 "where NAME like '%"+search_result+
7 "%' OR CATEGORY like '%"+search_result+
8 "%' OR DESCRIPTION like '%"+search_result+
9 "%'",
10 null);
11
12 startManagingCursor(data);
13
14 ListAdapter dataList = new SimpleCursorAdapter
15 (
16 this,
17 R.layout.list_element_name,
18 data,
19 new String[] {"NAME"}, //Welche Felder zur Anzeige gebracht werden
20 new int[] {R.id.label}
21 );
22 this.setListAdapter(dataList);

klappt auch, was ja schon mal gut ist.
Es klappt jedoch nur für ein Schlagwort, ist ja klar da genau das zwischen den %%-Zeichen gesucht wird.
Suche ich jetzt zB. %Joomla%, liefert er mir alles zu diesem Schlagwort.

möchte ich jetzt jedoch %Joomla 1.5% suchen, findet er zB. Joomla Version 1.5 nicht, da das Ausrufezeichen von Suchstring abweicht.
Nun meine Frage, könnt ihr mir einen kleinen Denkanstoß geben, wie ich mein Problem lösen kann? Ich möchte eine Suche die dann wirklich alle Wörter mit der DB abgleicht und auflistet.

Danke im Voraus.

— geändert am 14.02.2013, 09:17:08

Antworten
Devintelligence
  • Forum-Beiträge: 12

14.02.2013, 10:06:38 via Website

Hi Fiete,

du könntest eventuell die Leerzeichen mit einem % replacen. So würde er dann auch "Joomla Version 1.5" finden.

Grüße

Chris

Antworten
Fiete
  • Forum-Beiträge: 25

14.02.2013, 10:38:45 via Website

klappt...danke, warum bin ich da nicht selber draufgekommen? :D danke ;)

— geändert am 14.02.2013, 10:42:59

Antworten
Devintelligence
  • Forum-Beiträge: 12

14.02.2013, 10:53:41 via Website

Gern geschehen. Kein Probelm

Antworten