У меня есть ситуация, когда я должен обновить веб-сайт на хостинг-провайдере. На сайте есть CMS. Загрузка файлов CMS довольно проста с использованием FTP.
Мне также нужно импортировать большой (относительно ограничений файла базы данных PHP script) (около 2 МБ несжатого). Mysql закрыт для доступа извне, поэтому мне нужно загрузить файл с помощью FTP и запустить PHP скрипт для его импорта. К сожалению, у меня нет доступа к функции командной строки mysql
, поэтому я должен разобрать и запросить его с помощью собственного PHP. Я также не могу использовать LOAD DATA INFILE. Я также не могу использовать какой-либо интерактивный интерфейс, например phpMyAdmin, он должен запускаться автоматическим образом. Я также не могу использовать mysqli_multi_query()
.
Кто-нибудь знает или имеет уже закодированное, простое решение, которое надежно разбивает такой файл на отдельные запросы (могут быть многострочные операторы) и запускает запрос. Я хотел бы избежать, чтобы начать возиться с ним сам из-за многих ошибок, которые я, скорее всего, натолкнулся (как определить, является ли разделитель полей частью данных, как справляться с разрывами строк в полях заметок и т.д. на). Для этого должно быть готовое решение.