地址中包含逗号的 CSV 文件

CSV file with commas in the address

我必须使用 postgresql 在 table 中复制一个 .csv 文件。 我将拥有三个属性:name, address, postcode.

我正在使用命令:

COPY schemaname.tablename FROM '/tmp/tablename.csv' DELIMITER ',';

问题是在某些行中,地址文本中有逗号,因此数据库将它们视为分隔符(例如 John,"22, King's road", 89224!

地址也有引号(" "),没有header。

任何人都可以提出一些解决方案吗?

如果你有一个文本限定符,你应该告诉 postgresql 使用它来区分嵌入在字符串中的逗号和分隔字段的逗号:

COPY schemaname.tablename
FROM '/tmp/tablename.csv'
DELIMITER ','
QUOTE '"';

COPY 的完整选项列表:PostgreSQL - SQL Copy

使用 CSV 格式而不是分隔符

COPY schemaname.tablename
FROM '/tmp/tablename.csv' CSV