Det finns två scenarier här:
-
tabellens kolumner matchar exakt csv-kolumnerna. i så fall
REPLACE
är svaret - det är ett nyckelord tillLOAD DATA INFILE
se dokinlägg -
tabellens kolumner matchar inte csv-kolumnerna:REPLACE skulle orsaka konflikt poster som ska tas bort och återinföras, vilket effektivt tar bort ytterligare data. I så fall
LOAD DATA INFILE
är inte effektivt i sig, du behöver ett annat tillvägagångssätt med antingen filtrering av din fil innan, gör uppdateringar via php eller någon annan metod.
I alla fall, om du vill lägga till mer "logik" till importprocessen, kanske LOAD DATA INFIlE
är inte riktigt rätt tillvägagångssätt, men att använda temporära tabeller kan mycket väl vara att dra nytta av alla goda databaser.