Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
hallo,
ich habe eine mysql datenbank mit daten die ich gern durchsuchen möchte. das ganze mache ich so
Code:
rs = statement.executeQuery("SELECT id FROM auktionen where CONCAT(name,beschreibung,kurzbeschreibung,id) like '%"+att+"%'");
das problem ist jetzt aber das er halt nur genau die gleichen wörter raussucht. ich möchte das aber so das er auch unabhängig von groß und kleinschreibung sucht. geht das auch irgednwie ?
mehr brauch ich nicht.
att = att.toLowercase();
rs = statement.executeQuery("SELECT id FROM auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung,id)) like '%"+att+"%'");
EDIT: Weiß grad nicht, ob man bei Wildcards auch lower() nehmen kann. Aber ist auch besser es im JavaCode zu machen. Ist schneller, da Du schon ein to_lower(9 in der SQL Abfrage drin hast.
EDIT: ups. nicht to_lower() sondern lower() *schäm*
danke dir, also ich habe ne mysql datenbank und deinen vorschlag so übernommen.
aber es funktioniert noch immer nicht so recht.
Code:
att.toLowerCase();
rs = statement.executeQuery("SELECT id FROM auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung,id)) like '%"+att+"%'");
problem ist.
der string heisst :"Fahrrad"
wenn ich nach rad, ad, Fahrrad etc suche geht es.
sobald ich aber nach fahrrad suche funktioniert es nicht mehr.
att = att.toLowerCase();
if(kat.equals("0")){
rs = statement.executeQuery("SELECT id FROM auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung,id)) like '%"+att+"%'");
}else{
rs = statement.executeQuery("SELECT id FROM auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung,id)) like '%"+att+"%' and kategorie = '"+kat+"'");
}
in der DB steht: "Fahrrad"
aber er findet es nicht. nur beio teilstücken. aber nicht wenn ich "Fahrrad" oder "fahrrad" eingebe.
bin alles stück fuer stück nochmal durchgegangen.
jetzt gehts.. aber warum weiss ich nicht.
hmm
Code:
att = att.toLowerCase();
if(kat.equals("0")){
rs = statement.executeQuery("SELECT id from auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung)) like '%"+att+"%'");
}else{
// rs = statement.executeQuery("SELECT id FROM auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung,id)) like '%"+att+"%' and kategorie = '"+kat+"'");
rs = statement.executeQuery("SELECT id from auktionen where lower(CONCAT(name,beschreibung,kurzbeschreibung)) like '%"+att+"%' and kategorie = '"+kat+"'");
}