1
CSVファイルをPostgreSQL 9.5.3にコピーしようとしていて、NULLの問題が発生しています。このファイルはASCIIでエンコードされています。私のclient_encodingはUTF-8で、サーバーエンコーディングはUTF-8です。 nullは、次のように引用符で囲まれた文字列です。PostgreSQLデータベースにNULLをコピーする
私は私のテーブル構造は、私は、 "\" を指定することで、それを脱出しようとした、とCopyコマンドの他のオプションを試してみました
CREATE TABLE TEST_NULL(NULLCOLUMN CHAR(10));
copy TEST_NULL from 'F:\User Area\DCS.TXT' csv NULL AS 'null';
でこのエラーに
ERROR: invalid byte sequence for encoding "UTF8": 0x00
CONTEXT: COPY test_null, line 1
********** Error **********
ERROR: invalid byte sequence for encoding "UTF8": 0x00
SQL state: 22021
Context: COPY test_null, line 1
を取得何も動作していないようです。わからない、これをどのように処理するか。
'DCS.TXT'ファイルの1行目は何ですか? –
データベースヌルとutf8エンコードのヌルなどを混同しています。テキストファイルでヌルを取り除く必要があります。 trはこれを行うことができます。他のutilsも同様です。 tr -d '\ 000' outfile –
カラムをbyteaに再定義し、そのままNULLをロードできますか? –