![]() |
Datenbank: firebird • Zugriff über: IBO
Matchcode / Vorhandenheitsabfrage!
Hallo,
Ich habe ein kleines problem und zwar versuche einen matchcode zu schreiben der die vorhandenheit eines strings prüft. quasi wenn ich fritz peter in ein edit oder dergleichen schreibe und dann anlegen will in der datenbank soll er mir sagen ob es den fritz peter schon gibt! hatte an eine if abfrage gedacht aber gibt es dort nicht bessere wege?? |
Re: Matchcode / Vorhandenheitsabfrage!
mit "Table.Locate" suchen ob es den Eintrag schon gibt ? :?:
|
Re: Matchcode / Vorhandenheitsabfrage!
Hallo,
so ganz verstehe ich Dein Problem nicht. Firebird ist meines Wissens eine Datenbank und in einer Datenbank kann man suchen. Erstelle einen Index in der Datenbank namens "Matchcode" o.ä. und schreibe eine Routine, die in der Datenbank danach sucht. Sollte ich Dein Posting falsch verstanden haben, ignoriere einfach meine Antwort! :? Gruß :D Milo |
Re: Matchcode / Vorhandenheitsabfrage!
Stichworte "Unique Key" und "Index".
Dann sollte Dir die DB eine Exception um die Ohren hauen, wenn Du einen Wert doppelt einfügen willst. Diese Exception kannst Du abfangen und entsprechend behandeln. Oder willst Du es vor dem Insert prüfen, dann musst Du eben mit locate oder so arbeiten. Oder mit einem Select und einem RecordCount. |
Re: Matchcode / Vorhandenheitsabfrage!
Zitat:
|
Re: Matchcode / Vorhandenheitsabfrage!
über "locate" würde ich nur ungern gehen da sofern schon mehrere fehl bzw doppel einträge existieren er immer nur auf einem stehen bleiben würde!
in der datenbank selber etwas zu verändern missfällt mir leider auch ^^. ich bin ein schwierig zu fireden zustellen :pale: |
Re: Matchcode / Vorhandenheitsabfrage!
Weitere Möglichkeiten:
.lookup() .Filter |
Re: Matchcode / Vorhandenheitsabfrage!
versteh das jetzt irgendwie nicht so ganz...
willst du was haben, was alle doppelten einträge aus der db löscht oder willst du wenn du nen neuen Nutzer(oda so) anlegst, das vorher geprüft wird, ob es diesen Nutzer schon gibt??? |
Re: Matchcode / Vorhandenheitsabfrage!
das letztere aber mit der sicherheit das es ihn nur einmal doppelt gibt ;)
|
Re: Matchcode / Vorhandenheitsabfrage!
Und warum gibt es ihn doppelt?
|
Re: Matchcode / Vorhandenheitsabfrage!
weil es vergesslichkeit gibt ;)
und die datenbank nicht unnötig groß werden muss / falschinformationen auftreten sollen bei doppelten kontakten |
Re: Matchcode / Vorhandenheitsabfrage!
Um Platz zu Sparen speicherst du mehrfach?
|
Re: Matchcode / Vorhandenheitsabfrage!
nein grade das soll er nicht machen.
nur die datenbank existiert schon etwas länger und da können dann doppelte einträge existieren. es ist doch auch eigentlich egal wieso ich das mache. Wichtig ist halt nur das er doppelte findet. also ich gebe ein : name tele und ein paar andere sachen dann soll er melden ob es diesen jemand schon gibt aufgrund der eindeutigkeit der informationen. sofern dieser jemand existiert kommt eine messagebox und meldet dieses. mehr soll nicht passieren! falls dieser jemand schon mehr als einmal existiert könnte auch eine angabe mit wievielen folgen . |
Re: Matchcode / Vorhandenheitsabfrage!
Dann mach ein .Lookup() und werte den Rückgabewert aus.
|
Re: Matchcode / Vorhandenheitsabfrage!
Hallo,
Delphi-Quellcode:
Wo ist da das Problem ?
select count(*) from mytable
where matchcode='bla' > Die DB gibt es etwas länger... Dann hat aber jemand was verbockt (kein unique index) Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz