我正在使用 Vertica Python 将数据从 csv 文件复制到 Vertica 上的表。虽然它运行得很快,但我丢失了大约 700 行数据。我尝试删除 csv 文件并从新的 csv 文件加载,但我遇到了同样的问题。有人可以告诉我我的代码中做错了什么吗?
with open('new.csv', 'r',encoding="utf8") as file:
csv_file = file.read()
copy_cmd = "COPY Account FROM STDIN DELIMITER ','"
cur.copy(copy_cmd, csv_file)
connection.commit()
代码中是否有某些内容导致我丢失了 csv 文件中的数百行?
最佳答案
您可以使用 REJECTED DATA 和 EXCEPTIONS 来找出缺少哪些行以及原因。您需要为每个指定一个路径。拒绝的数据将显示哪些行未被复制,异常显示错误是什么。
COPY Account FROM STDIN DELIMITER ',' REJECTED DATA '/path/to/rejections.txt' EXCEPTIONS '/path/to/exceptions.txt';
关于python - 从 CSV 复制到 SQL 时丢失数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54410326/