it-swarm.com.de

Probleme beim Exportieren langer Spalten in Flatfiles mithilfe von SSIS

Wir haben ein SSIS-Paket, das Dateien generiert, die von Google Big Query verwendet werden. Die Dateien werden als .tsv-Dateien komprimiert.

Eine der Anforderungen ist, dass die Datei UTF-8 ist. Wir haben dies im Flatfile-Ziel so festgelegt, dass es 65001 - UTF-8 ist. Danach werden die generierten gzip-Dateien korrekt in Big Query übernommen.

Das Problem ist jetzt, dass einige Felder Zeichenlängen von bis zu 21.000 Zeichen haben. Der DT_WSTR lässt diese Größe nicht zu.

Das Ändern des Flatfile-Zielfelds in DT_NTEXT führt zu der folgenden Fehlermeldung

Fehler: 0xC020802E bei 14_3 Datenfluss in MyTSV, Flat File Destination MyDestination [12]: Der Datentyp für "Flat File Destination MyDestination.Inputs [Flat File Destination Input] .Columns [Value]" ist DT_NTEXT, was von ANSI nicht unterstützt wird Dateien. Verwenden Sie stattdessen DT_TEXT und konvertieren Sie die Daten mithilfe der Datenkonvertierungskomponente in DT_NTEXT.

Alle Lösungen, die ich gelesen habe, umfassen das Zurückkonvertieren in DT_WSTR oder das Zurücksetzen der Codepage auf 1252, was aufgrund der Anforderungen an die Big Query-Codepage und der Länge der Daten keine Option ist. Gibt es eine andere Lösung für dieses Problem?

4
Alf47

Klicken Sie auf das Unicode-Kontrollkästchen

Probieren Sie die folgende 65001-Codepage und das Unicode-Kontrollkästchen aus, um die Fehlermeldung für mich zu entfernen. Hoffentlich sind wir auf ähnlichen Versionen von SSDT. Meine Version ist 15.

Doppelklicken Sie jedoch zuerst auf Ihr Flatfile-Ziel und klicken Sie auf die Schaltfläche Aktualisieren ...

(enter image description here

(enter image description here

6
Sting