Postgresql

在 postgresql 中轉義分隔符

  • September 17, 2014

我正在嘗試將數據導入 postgres。數據欄位以逗號分隔,字元串可能包含逗號,在這種情況下,它們會被轉義:

資料結構:

create table v (a varchar);

數據文件:

bus
'Gat\,\\e\'way_MQB'

導入命令(從 bash 在 Linux 下執行)

cat data.csv | psql -d database -c "copy v (a) from stdin with delimiter ',' escape '\\' CSV header"

錯誤:

ERROR:  extra data after last expected column

我已經與這個問題鬥爭了好幾個小時,不明白我做錯了什麼?

嘗試:

cat data.csv | psql -d database -c "copy v (a) from stdin with delimiter ',' escape '\' quote '''' CSV header"

指定時不需要轉義轉義字元。QUOTE 預設為雙引號,因此您需要傳遞它。

引用自:https://dba.stackexchange.com/questions/76812