Hi romber,
wenn du den von Jens wunderbar ausgearbeiteten Code studiert und verstanden hast, dann hast du in kurzer Zeit eine Menge gelernt oder deine hier gegebene Selbsteinschätzung war falsch. Ich möchte deine Aufmerksamkeit trotzdem noch auf ein paar andere Dinge lenken.
Zuerst solltest du überlegen, ob du nicht deine Tabellendefinition änderst. STATUS ist ein Aufzählungstyp und sollte als solcher in der Tabelle gespeichert werden. Für den Benutzer werden die Zahlenwerte dann per Lookup-Tabelle in ihre Textdarstellung überführt und umgekehrt.
Ein weiterer Punkt ist die blindwütige Suche nach Strings in allen Feldern. Was willst du mit LIKE in einem Feld Preis vom Typ MONEY suchen? Viel wichtiger als diese Suche sind für den Benutzer möglichst viele Freiheitsgrade bei der Auswahl und Anordnung der Anfrageergebnisse. Statistische Angaben sind das Ergebnis einer Auswertung und werden in der Regel sauber vom Bearbeitungsteil deines Programms getrennt.
Nur am Rande sei erwähnt, dass es für die Suche in Textfeldern mit dem LIKE Operator beim MS
SQL Server eine performante Alternative gibt. Die integrierte Volltextsuche ist leicht zu konfigurieren und bei der Wortsuche mit tail truncation vielfach schneller als LIKE. Außerdem realisiert die Volltextsuche noch verschiedene andere Suchstrategien.
Freundliche Grüße vom marabu