Michael Schröpl: Suchfunktionhilfe

Beitrag lesen

Hi,

in meiner Datenbank moechte ich nun eine Suchfunktion einbauen.
Das Prinzip habe ich mir scho ueberlegt, nur bei der Umsetzung haperts.

was hältst Du davon, das Prinzip zu beschreiben, damit wir zur Umsetzung Stellung nehmen können?

Also die Datenbank sieht folgendermaßen aus:
feld1a%%feld2a%%feld3a%%etc.
feld1b%%feld2b%%feld3b%%etc.
also in jeder Zeile 1 Datensatz mit verschiedenen Feldern, getrennt mit einem %%.

Das ist keine Datenbank. Es ist *vielleicht* eine Tabelle innerhalb einer Datenbank (welche dann ggf. nur aus einer einzigen Tabelle besteht).
Haben Deine Zeilen konstant oder variabel viele Felder? (Bei konstant vielen Feldern wäre die Tabelle eventuell nicht besonders geschickt aufgebaut - aber auch bei variabel vielen Feldern ginge es ggf. besser.)
Willst Du beim Match während der Suche nur innerhalb einzelner Felder oder auch feldübergreifend Treffer erzielen können? Ersteres ginge geschickt über Indexstrukturen, bei letzterem (wie bei der auf diesem Server verfügbaren Archivsuche) ist eine Volltextsuche erforderlich.

Jetzt moechte ich die Moeglichkeit geben, mehrere Suchbegriffe einzugeben (getrennt durch ein Leerzeichen)

Wohinein? In eine Suchmaske? Was genau soll die Angabe mehrerer Begriffe bewirken? (AND? OR? whatever?)

und Gross/Kleinschreibung sollen beachtet werden.

Hast Du die Möglichkeit dazu (was genau steht in Deinen Feldinhalten? Wie vergleicht Deine Datenbank Strings?)

Ausserdem soll man noch die Moeglichkeit haben, dass entweder 1 Suchbegriff oder alle, die eingegeben wurden, zum Auflisten (in der Ergebnisliste) reicht.

Das klingt so, als würdest Du hiermit OR und AND beschreiben wollen.
Hast Du schon ein Konzept, wie das GUI für den Anwender aussehen soll (welche ja irgendwie angeben können muß, ob er OR oder AND haben will)?

Und was genau soll in der Ergebnisliste stehen? Welche Information soll der Anwender als Ergebnis seiner Suche erhalten?

Du siehst, die vollständige Spezifikation einer Suchmaschine geht nicht in drei Sätzen ...

mfG - Michael