在 Mac 上,当我执行此命令时使用 mysql 客户端(不使用 jdbc),它可以正常工作:
LOAD DATA LOCAL INFILE 'myfile.csv' REPLACE INTO TABLE transaction_details FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 LINES;
这适用于 jdbc 没有任何问题:(没有替换,所以忽略重复项)
LOAD DATA LOCAL INFILE 'myfile.csv' INTO TABLE transaction_details FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 LINES;
当我使用 jdbc 执行相同的命令时,它抱怨列的值为 ''。
我怀疑我可能必须向 jdbc url 添加一些选项,但我不确定它们是什么。 任何建议和帮助表示赞赏。
我有数据,其中包括新记录和对现有记录的更新,因此我需要使用 REPLACE,我知道我为什么要这样做。