gpt4 book ai didi

mysql - 从 MySQL csv 导出的 PostgreSQL csv 导入?

转载 作者:可可西里 更新时间:2023-11-01 06:40:02 26 4
gpt4 key购买 nike

它会起作用吗?

MySQL 导出:

SELECT * INTO OUTFILE 'C:/data.csv'
FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM table;

PostgreSQL:

COPY table FROM 'C:/data.csv' WITH DELIMITER AS '\t' NULL AS '\\N' CSV

由于某种原因缺少列。所以我相信定界符有问题。我是对的,我该怎么办?我可以在下面检查导致错误的行。但是我必须寻找哪些字符?

ERROR:  missing data for column "Column21"
CONTEXT: COPY table, line 88219: ...

最佳答案

  1. 正如@knitti 提到的,postgres 需要知道转义字符:ESCAPE '\'
  2. OPTIONALLY ENCLOSED BY '"' 是 csv 的错误格式。最好强制引用。

完整代码:

MySQL 5.5.15:

SELECT *
INTO OUTFILE 'C:/data.csv'
FIELDS TERMINATED BY '\t' ENCLOSED BY '"' ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM table;

postgres 9.0.3:

COPY table FROM 'C:/data.csv' WITH DELIMITER AS '\t' NULL AS '\\N' ESCAPE E'\\' CSV

关于mysql - 从 MySQL csv 导出的 PostgreSQL csv 导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7484413/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com