COPY を使用して CSV ファイルを Amazon Redshift にロードしようとすると、何もロードされません

最終更新日: 2020 年 1 月 3 日

COPY コマンドを使用して、Amazon Simple Storage Service (Amazon S3) から Amazon Redshift に CSV ファイルをロードしようとしているのですが、ファイルにレコードが含まれていても、何もロードされず、エラーも返されません。

解決方法

この問題は、CSV ファイルでキャリッジリターン (16 進数で「\\r」、「^M」、または「0x0D」) が行末記号として使用されている場合に発生します。Amazon Redshift はキャリッジリターンを行末記号として認識しないため、ファイルは 1 行として解析されます。COPY コマンドの IGNOREHEADER パラメータがゼロ以外の数値に設定されている場合、Amazon Redshift は最初の行をスキップするため、ファイル全体がスキップされます。操作が技術的に成功したため、ロードエラーは返されません。

この問題を解決するには、キャリッジリターンを CRLF (16 進数の「\\r\\n」または「0x0D0A」) または LF (16 進数の「\\n」または「0x0A」) に置き換えます。変更したファイルを S3 バケットにアップロードしてから、COPY コマンドを再試行します。


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合