View Full Version : SQL-Statement für nicht-druckbare Zeichen
Was muss ich in einer Select-Anweisung im Where-Teil angeben, um die Datensätze mit nicht druckbaren Zeichen zu finden?
Du kannst Hex-Werte einfach mit x'..' abfragen.
Hallo,
wenn diese Frage exakt gestellt ist, geht das nicht. Es gibt keine Where Klausel, die alle Sätze mit nicht druckbaren Zeichen einschließt und den Rest ausschließt.
mfg
Dieter Bender
Was muss ich in einer Select-Anweisung im Where-Teil angeben, um die Datensätze mit nicht druckbaren Zeichen zu finden?
Mit etwas gutem Willen gehts schon (ist halt nur Schreibarbeit):
where myfiled like('%' concat x'00' concat '%')
or myfiled like('%' concat x'01' concat '%')
or myfiled like('%' concat x'02' concat '%')
:
:
Über die Performance brauchen wir hier wohl nicht zu diskutieren.
@Baldur: das reicht noch nicht, undruckbar hängt auch vom Job ab.
Dieter
Mit etwas gutem Willen gehts schon (ist halt nur Schreibarbeit):
where myfiled like('%' concat x'00' concat '%')
or myfiled like('%' concat x'01' concat '%')
or myfiled like('%' concat x'02' concat '%')
:
:
Über die Performance brauchen wir hier wohl nicht zu diskutieren.
Meinst du nun die CCSID oder doch mehr metaphysisch ;) ?
es waren ausreichend oder in der Aussage, die Antwort lautet ja
:)))
Meinst du nun die CCSID oder doch mehr metaphysisch ;) ?
Danke schon mal für die Antworten.
Vielleicht sollte ich mein Problem etwas detaillierter beschreiben:
Ich wollte einen Datensatz einer Tabelle in einem 5250-DSPF anzeigen. Es erfolgte ein Absturz wegen eines permanenten E/A-Fehlers. Ich fand dann heraus, dass ein Attribut dieses Datensatzes Zeichen (z.B. ŷ₫º±) enthält, die in einem 5250-DSPF wohl nicht angezeigt werden können. Um nun weitere Abstürze zu bermeiden, wollte ich wissen, wie ich rausfinden kann, ob es noch mehr solcher fehlerhaften Datensätze gibt.
Dann hilft dir vielleicht die SQL-Funktion TRANSLATE !
select ...
where myfield <> translate(myfield, ' ', x'000102......3F')