Det enda sättet jag kunde få det att fungera var att ersätta det förberedda uttalandet med ett "exec"-anrop:
$rowCount = DB::connection()->getpdo()->exec(
"LOAD DATA LOCAL INFILE '$fileName'
INTO TABLE $tableName
CHARACTER SET utf8mb4
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '\"'
LINES TERMINATED BY '\\n'"
);
Jag har ingen aning om varför det inte skulle fungera med ett förberett uttalande i Laravel - det fungerar definitivt med ett rent SUB-förberedt uttalande.