Amazon S3のデータをAmazon Redshiftのテーブルにプルしています。表にはさまざまな列が含まれています。列データには特殊文字が含まれる場合があります。Amazon Redshift COPYコマンドでデリミタをエスケープする
copyコマンドには、Delimiter
というオプションがあります。ここでは、デリミタを指定してデータをテーブルにプルすることができます。私は区切り文字を使用してS3へ(unload command)
をエクスポートすると
- - ,
を言う - それは正常に動作しますが、私はS3から赤方偏移にインポートしようとすると、問題が特定の列が含まれているためでゾッ
問題が2倍ですコピーコマンドが区切り文字として誤って解釈し、エラーをスローする '、'演算子。
私はさまざまな区切り文字を試しましたが、私のテーブルのデータには、上記の問題の原因となる特殊文字が含まれているようです。
#%
または~,
のように複数の区切り文字を使用してアンロードしようとしましたが、コピーコマンドを使用してs3からロードすると、デュアル区切り文字はサポートされません。
どのようなソリューションですか?
区切り文字は\
を使用してエスケープすることができますが、何らかの理由でそれが動作していないか、コピーコマンドでエスケープするための正しい構文を使用していない可能性があります。