PowerCenter Codepage-Umwandlung
Wenn im Datenverschiebungsmodus Unicode festgelegt ist, akzeptiert der PowerCenter-Client Eingaben in jeder Sprache und wandelt sie in UCS-2 um. Der PowerCenter Integration Service konvertiert Quelldaten vor der Verarbeitung in UCS-2 und wandelt die verarbeiteten Daten vor dem Laden von UCS-2 in die Target-Codepage um.
In einer Sitzung wandelt der PowerCenter Integration Service Quell-, Target- und Lookup-Abfragen von der PowerCenter-Repository-Codepage in die Quell-, Target- oder Lookup-Codepage um. Der PowerCenter Integration Service konvertiert auch den Namen und den Aufrufttext gespeicherter Prozeduren von der PowerCenter-Repository-Codepage in die Codepage der Datenbank der gespeicherten Prozedur um.
Zur Laufzeit überprüft der PowerCenter Integration Service, ob er die folgenden Abfragen und Prozedurentexte von der PowerCenter-Repository-Codepage ohne Datenverlust konvertieren kann:
- •Quellabfrage. Muss in Quelldatenbank-Codepage konvertieren.
- •Lookup-Abfrage. Muss in Lookup-Datenbank-Codepage konvertieren.
- •Target-SQL-Abfrage Muss in Target-Datenbank-Codepage konvertieren.
- •Name und Aufrufttext gespeicherter Prozeduren. Muss in Codepage der Datenbank der gespeicherten Prozedur konvertieren.
Auswählen von Zeichen für PowerCenter Repository Metadaten
Bei der Eingabe von Metadaten ins PowerCenter-Repository können Sie beliebige Zeichen der PowerCenter-Repository-Codepage verwenden. Nutzt das PowerCenter-Repository UTF-16LE, können beliebige Unicode-Zeichen eingegeben werden. In einem für UTF-16LE aktivierten PowerCenter-Repository können Sie beispielsweise deutsche, japanische und englische Metadaten speichern. Es muss jedoch gewährleistet sein, dass der PowerCenter Integration Service erfolgreich SQL-Transaktionen mit Quell-, Target-, Lookup- und gespeicherten Prozedurdatenbanken abwickeln kann. Außerdem müssen Sie sicherstellen, dass der PowerCenter Integration Service aus Quell- und Lookup-Dateien lesen und in Target- und Lookup-Dateien schreiben kann. Daher müssen Sie beim Ausführen einer Sitzung darauf achten, dass die Zeichen der PowerCenter-Repository-Metadaten in den Quell-, Target-, Lookup- und gespeicherten Prozedur-Codepages kodiert sind.
Beispiel
PowerCenter Integration Service, PowerCenter-Repository und PowerCenter-Client nutzen die ISO 8859-1 Latin1 Codepage und die Quelldatenbank enthält anhand der Shift-JIS-Codepage kodierte japanische Daten. Jede Codepage enthält Zeichen, die nicht in einer anderen kodiert sind. Werden andere Zeichen als 7-Bit-ASCII für PowerCenter-Repository und Quelldatenbank-Metadaten verwendet, kann die Sitzung in folgenden Situationen fehlschlagen oder dazu führen, dass keine Zeilen in das Target geladen werden:
- •Sie erstellen ein Mapping, das ein String-Literal mit speziellen Zeichen des deutschen Sprachbereichs nach ISO 8859-1 in einer Abfrage enthält. Die Quelldatenbank kann die Abfrage zurückweisen oder inkonsistente Ergebnisse zurückgeben.
- •Sie erstellen mit dem PowerCenter-Client SQL-Abfragen mit speziellen Zeichen des deutschen Sprachbereichs nach ISO 8859-1. Die Quelldatenbank kann die spezifisch deutschen Zeichen der ISO 8859-1 Codepage nicht in die Shift-JIS-Codepage konvertieren.
- •Die Quelldatenbank hat einen Tabellennamen, der japanische Zeichen enthält. Der PowerCenter-Designer kann die japanischen Zeichen der Quelldatenbank-Codepage nicht in diejenigen der Codepage des PowerCenter-Client konvertieren. Stattdessen importiert der PowerCenter-Designer die japanischen Zeichen als Fragezeichen (?) und ändert so den Namen der Tabelle. Der PowerCenter Repository Service speichert den Namen der Quelltabelle als Fragezeichen im PowerCenter-Repository. Sendet der PowerCenter Integration Service eine Abfrage an die Quelldatenbank mit dem geänderten Tabellennamen, kann die Quelldatenbank die richtige Tabelle nicht finden und gibt keine Zeilen oder einen Fehler an den PowerCenter Integration Service zurück, so dass die Sitzung fehlschlägt.
Da die US-ASCII-Codepage eine Teilmenge der Codepages ISO 8859-1 und Shift-JIS ist, können Sie diese Dateninkonsistenzen vermeiden, indem Sie für Ihre sämtlichen Metadaten 7-Bit-ASCII-Zeichen verwenden.