# Suchfunktion



## siroFranz (3. Apr 2007)

hi,

möchte meine datenbank durchsuchen, klappt eigentlich auch.
hab einfach den suchtext ausnem JTextField mit den Einträgen in der Datenbank verglichen.

Problem ist wenn ich z.B. bean eingebe und in der datenbank steht Mr. bean findet der den nicht  :?:


----------



## Guest (3. Apr 2007)

```
WHERE name LIKE %bean%
```


----------



## siroFranz (4. Apr 2007)

hmm 
habs schon so weit. 

```
if(db.executeQuery("Select bezeichnung,id from film WHERE bezeichnung LIKE'"+fieldSuche.getText()+"'")){
                while(db.next()){
                    if(fieldSuche.getText().equals(db.getText("bezeichnung"))){
                         fieldFormat.setText("gefunden");
                    }              
}
```

das klappt so aber nicht wahrscheinlich wegen dem equals


----------



## AlArenal (4. Apr 2007)

Ist eh muckefuck. Schau dir mal lieber an was die DB an nativen Möglichkeiten bietet ne Volltext-Suche durchzuführen.


----------



## siroFranz (4. Apr 2007)

wieso das geht damit ganz gut hab das in meiner db ausprobiert aber kriegs noch nicht übers java prog hin.
Bräuchte was anderes als equals, aber bin mir nicht sicher kann auch was anderes sein.
 :?:  :?:


----------



## The_S (4. Apr 2007)

Was willst du denn überhaupt erreichen? Du hast doch deine Like Suche ...


----------



## siroFranz (4. Apr 2007)

ja die läuft aber noch nicht im java-programm und weiß nicht warum :?: 
wenn ich das so in die sql konsole reinhaue, findet der das.


```
if(db.executeQuery("Select bezeichnung,id from film WHERE bezeichnung LIKE' %"+fieldSuche.getText()+"%'")){
                while(db.next()){
                    if(fieldSuche.getText().equals(db.getText("bezeichnung"))){
                         fieldFormat.setText("gefunden");
                    }             
}
```


----------



## The_S (4. Apr 2007)

Wenn auf der SQL-Konsole geht, dann geht auch in Java!

Setz mal den Text statisch ein, evtl. stimmt der String aus dem Textfeld nicht.

[edit] Du weißt, dass du "LIKE*'* %...%" geschrieben hast anstelle von "LIKE *'*%...%"?


----------



## siroFranz (4. Apr 2007)

nö tut sich immer noch nichts. probier nochmal bisschen kann ja nicht sein, dass ich das nicht hinkriege

ok habs. das mit dem if(.....equals.....) kann weggelassen werden  :!:


----------



## AlArenal (4. Apr 2007)

"richtige" Suche am Beispiel von MySQL: 
http://www.onlamp.com/pub/a/onlamp/2003/06/26/fulltext.html
http://jeremy.zawodny.com/blog/archives/000576.html
...


----------



## siroFranz (5. Apr 2007)

danke zieh mir das morgen mal rein  :roll:  :lol:  :lol:


----------

