3

informaticaを使用してフラットファイルからテーブルにデータをロードしています。ファイルには、中国語などの英語と外国語の両方の文字が含まれています。読み込み後、外国語の文字が正しく表示されません。この問題はどのように解決できますか?UTF-16エンコーディングを使用して解決することもできましたが、以前はUTF-8を使用していました。

4

2 に答える 2

1

ロードのワークフローを実行する統合サービスのエンコーディングを見つける必要があります。Informatica では、utf-8、ascii、windows-1252 の 3 つの異なるエンコーディングがサポートされています。使用しているエンコーディングが utf-8 であることを確認する必要があります。また、ワークフローのソース修飾子に、正しいエンコーディングを使用してファイルを読み取るように指示する必要があります (utf-8 または utf-16 の可能性があります)。最後に、データベース テーブルが中国語をサポートするエンコーディングを使用していることを確認する必要があります。

于 2012-01-13T14:00:09.577 に答える
1
  1. デザイナーのソースから始めます。ソース修飾子プレビューでデータを正しく表示できますか? そうでない場合は、ff ソース定義エンコーディングを UTF-8 に設定することをお勧めします。

  2. Integration サービスは、ASCII モードではなく、Unicode モードで実行する必要があります。これは、管理コンソールの統合サービスのプロパティから確認できます。

  3. ターゲットは UTF-8 エンコーディングでなければなりません。

    • ワークフロー マネージャーでリレーショナル接続 (ターゲットがデータベースの場合) エンコーディングをチェックして、UTF-8 であることを確認します。
    • 問題が解決しない場合は、出力を utf-8 フラットファイルに書き込み、データが正しく読み込まれているかどうかを確認してください。はいの場合、問題はデータベースへの書き込みにあります。
    • NLS_LANG、NLS_CHARACTERSET (Oracle 用) などのデータベース設定を確認します。

サダゴパン

于 2013-01-28T15:59:41.337 に答える