У меня есть огромное количество данных, которые генерируются из скрипта PHP и должны быть вставлены в базу данных. Я пробовал различные решения с разными результатами, но текущее решение (и, по моему мнению, должно быть лучшим) заключается в том, что я генерирую данные в CSV-файл, а затем вставляю его в базу данных со следующим запросом:mysqli_query возвращает false с кодом ошибки 0, но запрос завершается
LOAD DATA LOCAL INFILE 'myfile.csv' INTO TABLE t1 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY "'"
Я использую CodeIgniter в качестве основы PHP, и после того, как запрос был казненные им перенаправлен на страницу с ошибкой, которая только говорит
Ошибка базы данных Происходила
Номер ошибки: 0
Нет сообщений об ошибке.
Я прошел через код, но все, что я могу найти, это то, что mysqli_query()
возвращает false, а затем на mysqli_errno()
возвращает 0 и mysqli_error()
возвращает пустую строку.
Однако, запрос действительно преуспел, и когда я смотрю в базе данных, я вижу, что все данные из файла CSV успешно вставлены. Ожидается ли такое поведение? Если это так, я предполагаю, что мне нужно немного взломать код CodeIgniter или позвонить mysqli_query()
напрямую, а не проходить через фреймворк.
Я также выполняю тот же запрос в MySQL Workbench, и я не получаю сообщение об ошибке там.
Пожалуйста, показать код, который вы используете для запуска запроса. –
Это код $ this-> db-> query ($ query); – Johan
нет, я имею в виду полный код, включая часть, в которой вы выводите сообщение об ошибке. Вы можете отредактировать его в вопросе * Edit *: Ах, я вижу, вы используете CodeIgniter, что, вероятно, делает вещи немного сложнее. Тем не менее, попробуйте опубликовать то, что вы можете –