[英]MySql load data infile duplicates
我有一個12000行和90列的大型CSV文件。
我想使用mysql加載數據infile查詢將其上傳到我的mysql數據庫。
但是我一直收到這樣的錯誤,我的CSV在主鍵上有重復。
我確定它在主鍵上沒有重復項。
可能是什么問題呢?
這是我的代碼
$sql = "LOAD DATA INFILE '/a_bysch_store (2).csv' INTO TABLE a_bysch"
. " FIELDS TERMINATED BY ','"
. " LINES TERMINATED BY '\r\n'"
. " IGNORE 1 LINES";
//Try to execute query (not stmt) and catch mysqli error from engine and php error
if (!($stmt = $mysqli->query($sql))) {
echo "\nQuery execute failed: ERRNO: (" . $mysqli->errno . ") " . $mysqli->error;
}
代替LOAD DATA INFILE使用LOAD DATA LOCAL INFILE。 這會將重復的鍵錯誤轉換為警告,並且文件應在跳過重復項的情況下導入。 這與使用IGNORE開關相同。 您可能可以使用任何一個。 我看到您正在使用IGNORE 1行,但這不會忽略重復的鍵。
另外,如果您將自動增量用作主鍵,請不要在csv文件中傳遞該值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.