выполнение файлов MySQL *.SQL в php
При создании баз данных веб -сайтов вы можете встретить сценарии, где вам нужно выполнить . SQL -файлы от PHP для автоматизации генерации сайтов. В то время как zend_framework может быть полезным, запуск . SQL -файлы непосредственно из PHP могут быть сложными из -за несоответствий в операторах SQL.
Решение: Использование Shell_exec ()
] Рекомендуемый подход состоит в том, чтобы вызвать инструмент MySQL с помощью shell_exec () для выполнения вашего сценария *.sql. Вот пример:
$command = 'mysql' . ' --host=' . $vals['db_host'] . ' --user=' . $vals['db_user'] . ' --password=' . $vals['db_pass'] . ' --database=' . $vals['db_name'] . ' --execute="SOURCE ' . $script_path ;
] Эта команда создает команду выполнения MySQL с необходимыми параметрами для выполнения *.SQL -файла, указанного в $ script_path.
различия между shell_exec () и exec ()
] Хотя обе функции выполняют внешние команды, они имеют некоторые различия. shell_exec () захватывает выход команды и возвращает его как строку, а exec () возвращает статус выполнения команды. В этом случае shell_exec () предпочтительнее получить вывод команды MySQL.
] Дополнительные соображения
при выполнении *.SQL файлы убедитесь, что команда включает все Необходимые параметры (DB_HOST, DB_USER, DB_PASS, DB_NAME), и у вас есть достаточные разрешения для выполнения сценария. Кроме того, используйте опцию -execute = "source ..." вместо
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3