[gelöst]Parameterabfrage - Groß- und Kleinschreibung ignorieren

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: [gelöst]Parameterabfrage - Groß- und Kleinschreibung ignorieren

Re: [gelöst]Parameterabfrage - Groß- und Kleinschreibung ignorieren

von RobertG » Mo, 08.08.2016 21:45

Hallo Hubsi56,

Parameterabfragen müssen doch nicht nur als Abfragen gebraucht werden. Sie können auch in einem Unterformular eingebaut werden.
Hauptformular: 1 Tabelle mit nur einem Datensatz, der immer wieder überschrieben wird.
Unterformular: Parameterabfrage, Parameter verbunden mit einem Feld der Tabelle aus dem Hauptformular.
Außerdem im Unterformular ein Button zum Aktualisieren der Abfrage.

Im Hauptformular wird etwas eingetragen. Der Button aus dem Unterformular wird betätigt. Dadurch wird der Datensatz abgespeichert (Wechsel des Formulars) und das Unterformular auf den Wert aus dem Hauptformular eingestellt.

So ein Formular mit Datenfilterung ist den meisten anderen Suchfunktionen von der Schnelligkeit her deutlich überlegen.

Gruß

Robert

Re: Parameterabfrage - Groß- und Kleinschreibung ignorieren

von Comkra » Mo, 08.08.2016 18:09

Hubsi56 hat geschrieben:
sämtliche Informationen über den jeweils Gesuchten
Ich kann dich soweit beunruhigen, dass wenn du dafür per "Volltext" über alle Tabellen deiner Datenbank bzw. über mehr als ein Feld einer Tabelle suchen musst, deine Datenbank nicht gut aufgebaut ist. Jede Information sollte nur einmal vorkommen und über Beziehungen mit anderen Informationen verknüpft sein.

Google doch mal den Begriff "Normalform"!
Bild

Ich habe neben der Suche nach Mandanteninformationen natürlich auch z.B. eine Suche nach offenen Rechnungen eines Mandanten durch Eingabe des Nachnamens.
Hier frage ich aus einer Ansicht aller offenen Rechnungen den jeweiligen Nachnamen ab.
Sollte ich hierfür den Aufbau verändern? Die Abfragen müssen anwenderfreundlich sein, da das Sekretariat die Informationen so schnell wie möglich ermitteln muss. Daher laufen alle Abfragen wenn möglich über den Nachnamen des jeweiligen Mandanten.
RobertG hat geschrieben:Hallo *,

hier noch die Kurzvariante:

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE LOWER("Nachname") LIKE LOWER(:Nachname)
wobei da die Verbindung mit LIKE keinen Sinn ergibt. Der ergibt sich erst, wenn nur nach Wortteilen gesucht werden soll:

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE LOWER("Nachname") LIKE '%'||LOWER(:Nachname)||'%'
Dann braucht nur ein Buchstabe eingegeben zu werden und alle Nachnamen mit dem entsprechenden Buchstaben erscheinen.

Gruß

Robert
VIelen Dank! Die zweite Abfrage ist genau das was ich gesucht habe. :D

Re: Parameterabfrage - Groß- und Kleinschreibung ignorieren

von RobertG » Fr, 05.08.2016 17:07

Hallo *,

hier noch die Kurzvariante:

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE LOWER("Nachname") LIKE LOWER(:Nachname)
wobei da die Verbindung mit LIKE keinen Sinn ergibt. Der ergibt sich erst, wenn nur nach Wortteilen gesucht werden soll:

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE LOWER("Nachname") LIKE '%'||LOWER(:Nachname)||'%'
Dann braucht nur ein Buchstabe eingegeben zu werden und alle Nachnamen mit dem entsprechenden Buchstaben erscheinen.

Gruß

Robert

Re: Parameterabfrage - Groß- und Kleinschreibung ignorieren

von Comkra » Fr, 05.08.2016 12:34

Danke, jetzt funktioniert es! :)

Re: Parameterabfrage - Groß- und Kleinschreibung ignorieren

von nikki » Fr, 05.08.2016 12:31

Hallo,

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE LOWER("Nachname") LIKE :Nachname OR "Nachname" LIKE :Nachname

[gelöst]Parameterabfrage - Groß- und Kleinschreibung ignorieren

von Comkra » Fr, 05.08.2016 11:30

Hallo,
ich möchte in einer Datenbank Mandanten (Kunden) per Nachname suchen um sämtliche Informationen über den jeweils Gesuchten zu erhalten.
Mit folgender Abfrage funktioniert das bisher recht gut, jedoch sind manche Nachnamen komplett klein geschrieben, bei Anderen der erste oder die ersten zwei Buchstaben groß. Gibt es eine Möglichkeit, Groß- und Kleinschreibung bei der Parameterabfrage komplett zu ignorieren? Bisher muss ich dieses Problem mit Platzhaltern bei der Eingabe lösen, da ich bei der Suche nach "Müller" kein Ergebnis zu "müller" erhalte.

Code: Alles auswählen

SELECT * FROM "Mandanten" WHERE "Nachname" LIKE :Nachname
Mandanten.Nachname ist als Feldtyp Text[VARCHAR] erstellt und bei jedem Mandanten vorhanden.

Nach oben