Mysql
 sql >> Base de données >  >> RDS >> Mysql

Laravel - Déclaration préparée PDO - Impossible d'exécuter des requêtes alors que d'autres requêtes non tamponnées sont actives

La seule façon de le faire fonctionner était de remplacer l'instruction préparée par un appel 'exec' :

$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'"
        );

Je ne sais pas pourquoi cela ne fonctionnerait pas en utilisant une instruction préparée dans Laravel - cela fonctionne certainement avec une instruction préparée PDO pure.