nicht darstellbare Zeichen

05/05/2008 - 21:26 von Wolfgang Schumacher | Report spam
Hallo Newsgroup,

Ich bin heute von einem Kunden auf ein Problem hingewiesen worden an
dem ich immer noch herumknabbere und keine Lösung finde.

Wir speichern in einer Spalte von Typ nvarchar den Inhalt von Barcodes
die auf Briefen aufgedruckt sind. Sind mehre Barcodes aufgedruckt
werden die Barcodes erstmal alle mit Komma getrennt in dieser Spalte
gespeichert. Bei der weiteren Verarbeitung werden dann die einzelnen
Barcodes aus dieser Spalte anhand des Trennzeichens extrahiert. Das
klappt wunderbar, schon seit Jahren.

Anscheinend ist jetzt ein neuer Barcodetyp dazugekommen. Dieser
Barcode enthàlt alphanumerische Zeichen, die z.T. auch nicht
darstellbar sind und dann im Query Analyser als kleine Quadrate
dargestellt werden. Das dumme ist das die T-SQL String Funktionen mit
diesen Daten anscheinend nicht umgehen können und die seltsamsten
Ergebnisse liefern. Beispielsweise liefert CHARINDEX nicht die
Position des Kommas das gesucht wird, sondern gibt eine
alphanumerische Zeichenkette zurück.

Hat jemand àhnliche Effekte auch schon mal gesehen und wenn ja wie
könnte man das Problem lösen? Wàre für jeden Hinweis dankbar.

Das ganze basiert übrigens auf einer MSSQL 2000 Installation.

Besten Dank im voraus.
Wolfgang Schumacher
 

Lesen sie die antworten

#1 Wolfgang Schumacher
06/05/2008 - 11:05 | Warnen spam
On 5 Mai, 21:26, Wolfgang Schumacher
wrote:
Hallo Newsgroup,

Ich bin heute von einem Kunden auf ein Problem hingewiesen worden an
dem ich immer noch herumknabbere und keine Lösung finde.

Wir speichern in einer Spalte von Typ nvarchar den Inhalt von Barcodes
die auf Briefen aufgedruckt sind. Sind mehre Barcodes aufgedruckt
werden die Barcodes erstmal alle mit Komma getrennt in dieser Spalte
gespeichert. Bei der weiteren Verarbeitung werden dann die einzelnen
Barcodes aus dieser Spalte anhand des Trennzeichens extrahiert. Das
klappt wunderbar, schon seit Jahren.

Anscheinend ist jetzt ein neuer Barcodetyp dazugekommen. Dieser
Barcode enthàlt alphanumerische Zeichen, die z.T. auch nicht
darstellbar sind und dann im Query Analyser als kleine Quadrate
dargestellt werden. Das dumme ist das die T-SQL String Funktionen mit
diesen Daten anscheinend nicht umgehen können und die seltsamsten
Ergebnisse liefern. Beispielsweise liefert CHARINDEX nicht die
Position des Kommas das gesucht wird, sondern gibt eine
alphanumerische Zeichenkette zurück.

Hat jemand àhnliche Effekte auch schon mal gesehen und wenn ja wie
könnte man das Problem lösen? Wàre für jeden Hinweis dankbar.

Das ganze basiert übrigens auf einer MSSQL 2000 Installation.

Besten Dank im voraus.
Wolfgang Schumacher



Hallo nochmal,

Ich konnte das Problem jetzt noch ein wenig eingrenzen.
Das Hauptproblem scheint das ASCII Zeichen 001 (soh = start of
heading) zu sein. Taucht dieses Zeichen auf wird bei einem Select auf
die Spalte das Result an dieser Stelle gesplittet und alles was hinter
ASCII 001 kommt in eine nàchste Spalte verschoben. Eventuelle weitere
Spalten im Resultset verschieben sich dann ebenso nach rechts, somit
ist das gesamte Resultset unbrauchbar, da das Zeichen nicht in jeder
Zeile enthalten ist und Ergennisse im Resultset dann teilweise in
Spalte n, andere in palte n+1 auftauchen.
Ich wàre immer noch für jede Idee die zur Lösung des Problems führt
sehr dankbar.

Gruß
Wolfgang Schumacher

Ähnliche fragen