So, habe heute den ganzen Tag dran gesessen und was benutzbares ist sogar bei rausgekommen.
Inwiefern das ganze perfomant ist, wird sich erst herausstellen, wenn wir genügend TestDatensätze in der DB haben.
Habe das Problem wie folgt "gelöst":
Code:
StringBuffer query = new StringBuffer("SELECT * FROM meta WHERE ");
int whereclausecount = 0;
//Wenn der Benutzer bei Artist eine Bedingung eingegeben hat
if(meta.getArtist()!=null){
query.append("artist LIKE '%"+meta.getArtist()+"%'");
whereclausecount++;
}
//Wenn der Benutzer bei ImageHeight eine Bedingung eingegeben hat
if(meta.getImageHeight()>0.0){
if(whereclausecount>0)
query.append(" AND ");
query.append("imageheight="+meta.getImageHeight());
whereclausecount++;
}
//Wenn der Benutzer bei ImageWidth eine Bedingung eingegeben hat
if(meta.getImageWidth()>0.0){
if(whereclausecount>0)
query.append(" AND ");
query.append("imagewidth="+meta.getImageWidth());
whereclausecount++;
}
System.err.println(query);
String sqlstmt = query.toString();
resultSet = test.selectFromTable(sqlstmt); Somit ergibt sich, dass man die DB zumindest schonmal nach "artist", "imagewidth" und "imageheight" durchsuchen kann.
Und das ganze ist ja beliebig erweiterbar...
Würde euch das ganze gerne hier zeigen, habe nämlich eine JSP gebaut um das ganze zu testen. Leider bräuchtet ihr dazu einen SSH-Tunnel in unser FH Netzwerk, den ich euch leider nicht anbieten kann :P
Aber wenn das ganze irgendwann mal richtig showreif & public ist, lassen wir euch gerne an unserem Ergebnis teilhaben!
Gruß
Norman
Lesezeichen