Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Strings schnell ersetzen (https://www.delphipraxis.net/184894-strings-schnell-ersetzen.html)

p80286 29. Apr 2015 11:59

AW: Strings schnell ersetzen
 
Zitat:

Zitat von Nersgatt (Beitrag 1299617)
Ich habe auch schon kurzzeitig überlegt, eine weitere Spalte einzufügen, wohin die Daten ohne Akzentzeichen per Trigger kopiert werden. Aber dazu konnte ich mich noch nicht durchringen, da ich damit ja die Datenbank denormalisieren würde. Davon bekomm ich immer Sodbrennen. :stupid:

Na Du wärst jedenfalls nicht der erste, der so etwas anwendet. Da Benutzer im allgemeinen nicht in der Lage sind Tennzeichen, führende Nullen ,Prüfziffern und sonstigen Firlefanz richtig einzugeben gibt es ein Feld "eingedampfter Wert" mit dem Inhalt 12345 da kann man nach 12-345, 123-45, 1-234.5 suchen und wird immer fündig, bzw. es kommt immer ein Vorschlag was es wohl sein könnte. Gut streng genommen handelt es sich um ein Datum was nicht zu meinen Daten gehört, auf der anderen Seite erleichtert es die Suche.

Gruß
K-H

OlafSt 29. Apr 2015 13:14

AW: Strings schnell ersetzen
 
Ich habe mal gelernt: Jede Operation sollte nur einmal gemacht werden. Und dieses Ersetzen von Sonderzeichen ist genau so ein Fall. Man kann natürlich dem SQL-Server jedesmal aufs neue die Arbeit aufbürden, in allen selektierten Zeichenketten die Sonderzeichen zu ersetzen, bei jeder Abfrage neu, 250.000x am Tag.

Man kann es aber auch nur einmal machen und die umgewandelte Zeichenkette mitspeichern. Redundanz ist nicht immer ein No-Go, und dieser Fall hier ist ein Paradebeispiel dafür, das ein wenig Redundanz gar nicht so verkehrt ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:30 Uhr.
Seite 2 von 2     12   

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