我有一个csv文件有n个记录。现在我想把它导入表中。我还想忽略重复的记录(如果特定的两列具有相同的值,则考虑duplicate)。我还将头传递到查询值中,以便将reoced插入到数据库表的相应列中
我的查询是$header是csv header$basepath是csv的基本路径位置
$query = sprintf("LOAD DATA local INFILE '%s' INTO TABLE table name FIELDS TERMINATED BY '`' OPTIONALLY ENCLOSED BY '\"' ESCAPED BY '\"' LINES TERMINATED BY '\\n' (duplicatematchcol1,duplicatematchcol1) IGNORE 0 LINES (" . implode(',', $header) . ") , addslashes($basePath));
1条答案
按热度按时间3xiyfsfu1#
如果你有
UNIQUE
在定义重复的列上创建索引您可以始终使用INSERT IGNORE INTO ...
这种插入错误被忽略的方法。这个
IGNORE
即使在LOAD DATA
查询。