Adresse verbessern
Hallo Leute.
Folgende Anweisungen benutze ich um in einer Datenbank Adressdaten zu verbessern
Nun habe ich zusätzlich das Problem das viele Namen und Vornamen UTF-8 Fehler durch eine ehemalig Formatierung haben. Diese könnte ich nun mit
etc verbessern.
Es ist nur viel schreibaufwand für jedes einzelne öäü etc. Kann mir jemand sagen ob das auch einfacher geht?
Folgende Anweisungen benutze ich um in einer Datenbank Adressdaten zu verbessern
UPDATE tkunde SET cFirma = REPLACE(cFirma, ' Und ', ' & ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cVorname = REPLACE(cVorname, ' Van ', ' van ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cVorname = REPLACE(cVorname, ' Und ', ' & ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cName = REPLACE(cName, ' Van ', ' van ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cName = REPLACE(cName, ' Und ', ' & ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cName = REPLACE(cName, ' Von ', ' von ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cName = REPLACE(cName, ' Der ', ' der ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' An ', ' an ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Am ', ' am ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Der ', ' der ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Den ', ' den ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Dem ', ' dem ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Zur ', ' zur ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cStrasse = REPLACE(cStrasse, ' Zum ', ' zum ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' An ', ' an ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Am ', ' am ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Der ', ' der ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Den ', ' den ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Dem ', ' dem ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Zur ', ' zur ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Zum ', ' zum ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
UPDATE tkunde SET cOrt = REPLACE(cOrt, ' Ot ', ' OT ') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
Nun habe ich zusätzlich das Problem das viele Namen und Vornamen UTF-8 Fehler durch eine ehemalig Formatierung haben. Diese könnte ich nun mit
UPDATE tkunde SET cVorname = REPLACE(cVorname, 'jö', 'ö') WHERE kKunde = (Select MIN(tKunde_kKunde) From tbestellung where Convert(DATETIME, dErstellt, 104) = Convert(VARCHAR, GETDATE(), 104));
Es ist nur viel schreibaufwand für jedes einzelne öäü etc. Kann mir jemand sagen ob das auch einfacher geht?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 313045
Url: https://administrator.de/contentid/313045
Ausgedruckt am: 14.11.2024 um 21:11 Uhr
9 Kommentare
Neuester Kommentar
Zitat von @3jojojo:
Es ist nur viel schreibaufwand für jedes einzelne öäü etc. Kann mir jemand sagen ob das auch einfacher geht?
Es ist nur viel schreibaufwand für jedes einzelne öäü etc. Kann mir jemand sagen ob das auch einfacher geht?
Moin,
klar geht das einfacher, Du suchst einen Praktikanten, der über das Frontend(!) jeden einzelnen Datensatz prüft
Oder Du untersuchst alle Namen, die nicht die gewünschten Standardzeichen (not in a-z A-Z etc) enthalten und baust Dir dann Dein Update Statement zusammen.
Gruss
Es gibt dafür ganz viele Ansätze, mit dem hier kannst Du schnell und einfach arbeiten:
Du untersuchst jeden Namen nach Zeichen die nicht A-Z, a-z und die üblichen Sonderzeichen enthalten, damit hast Du alle unerwünschten Zeichen, die kannst Du dann per Update Statement eliminieren. Tabelle vorher sichern.
Ich seh' gerade das die Frage in Batch&Shell steht, meine Antwort bezieht sich auf SQL, Dein Skript sieht danach aus.
Ich denke mal Du meinst eine SQL Tabelle, oder?
Wenn Du von SQL keinen Plan hast, was nicht schlimm ist, dann überlasse das jemandem, der sich damit auskennt und vor allem Verantwortung für seine Taten übernimmt.
Ich kenne Deine Umgebung nicht, und weiß nichts über Deine Datenbank, würdest Du da ernsthaft ein Skript von mir einsetzen, dass Du nicht nachvollziehen kannst.
Manche Frontends haben es nicht so gerne wenn die Daten über das MMS verändert werden und es kann gut sein, dass die Daten nicht nur in der einen Tabelle stehen (und verändert werden müssen) sondern (auch wenns nicht Datenbankkonform ist) an anderen Stellen.
Der Aufwand und die Kosten sind überschaubar , ich empfehle Dir Dich an den Software Support zu wenden, die kennen ihr System und haben sicher fertige Skripte, dürfte in deutlich unter einer Stunde zu machen sein.
Ich kenne Deine Umgebung nicht, und weiß nichts über Deine Datenbank, würdest Du da ernsthaft ein Skript von mir einsetzen, dass Du nicht nachvollziehen kannst.
Manche Frontends haben es nicht so gerne wenn die Daten über das MMS verändert werden und es kann gut sein, dass die Daten nicht nur in der einen Tabelle stehen (und verändert werden müssen) sondern (auch wenns nicht Datenbankkonform ist) an anderen Stellen.
Der Aufwand und die Kosten sind überschaubar , ich empfehle Dir Dich an den Software Support zu wenden, die kennen ihr System und haben sicher fertige Skripte, dürfte in deutlich unter einer Stunde zu machen sein.
Moin,
Henning
Nun habe ich zusätzlich das Problem das viele Namen und Vornamen UTF-8 Fehler durch eine ehemalig Formatierung haben. Diese könnte ich nun mit
Wenn du die "UTF-8 Fehler" nicht näher einkreisen oder bestimmen kannst gehts es wohl nur auf die umständliche Methode, ansonsten könnte ja vielleicht auch irgendein UTF-8-Ansi (oder sonstwas)-Konverter helfen?Henning