0

私のテキストファイルは次のようになります:

\home\stanley:123456789
c:/神戸:213
\tej\home\ant:222312

FOREIGN TABLE の手順を作成します。

CREATE FOREIGN TABLE file_check(txt text) SERVER file_server OPTIONS (format 'text', filename '/home/stanley/check.txt');

select file_check の後 (使用: select * from file_check)

私のコンソールが私を見せて

ホームスタンリー:123456789
c:/神戸:213
ejhomeant:222312

誰でも私を助けることができますか??

4

1 に答える 1

1

ファイルforeign-data-wrapperは、COPYと同じルールを使用しています(おそらく、下のコードが同じであるためです)。バックスラッシュはエスケープ文字であることを考慮する必要があります...

http://www.postgresql.org/docs/9.2/static/sql-copy.html

上記の表に記載されていないその他のバックスラッシュ文字は、それ自体を表すものと見なされます。ただし、バックスラッシュを不必要に追加すると、誤ってデータ終了マーカー (.) またはヌル文字列 (デフォルトでは \N) に一致する文字列が生成される可能性があるため、注意してください。これらの文字列は、他のバックスラッシュ処理が行われる前に認識されます。

したがって、バックスラッシュを 2 倍にするか、1 列の csv ファイルとして試して、それが役立つかどうかを確認する必要があります。

于 2013-04-12T07:53:14.787 に答える