но имената на колоните в csv и това в таблицата на базата данни са различни какво трябва да направя?
Не е проблем. Можете да посочите коя CSV колона да се импортира в коя колона на базата данни.
ЗАРЕЖДАНЕ НА ДАННИ INFILE синтаксис
По подразбиране, когато не е предоставен списък с колони в края на оператора LOAD DATA INFILE, се очаква входните редове да съдържат поле за всяка колона на таблицата. Ако искате да заредите само някои от колоните на таблицата, посочете списък с колони:
LOAD DATA INFILE 'persondata.txt' INTO TABLE persondata (col1,col2,...);
Това, което обичам да правя, когато намеря синтаксиса на INFILE за твърде сложен, е да използвам графичен клиент като HeidiSQL за да щракнете заедно върху правилния ред на колоните (има графичен преглед) и копирайте+поставете генерираната SQL заявка.