Postgresql
在 postgresql 中轉義分隔符
我正在嘗試將數據導入 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 預設為雙引號,因此您需要傳遞它。