insert_batch()
се опитва да избегне точно вашия проблем - опитвайки се да вмъкнете данни, по-големи от MySQL, е конфигуриран да обработва наведнъж. Не съм сигурен дали опцията на MySQL за това е max_allowed_packet
или нещо друго, но проблемът с него е, че задава ограничение в байтове, а не в брой редове.
Ако ще редактирате DB_active_rec.php, mysql_driver.php или каквото и да е подходящо ... опитайте да промените този брой 100 в for()
цикъл. 50 би трябвало да е по-безопасен избор.
Освен това, FYI - affected_rows()
няма да върне правилната стойност, ако вмъквате повече от 100 реда чрез insert_batch()
, така че не е надеждно да го използвате като проверка за успех/грешка. Това е така, защото insert_batch()
вмъква вашите данни със 100 записа наведнъж, докато affected_rows()
ще върне данни само за последната заявка.