4.5.1.5 Выполнение SQL-запросов из текстового файла
Клиент mysql обычно используется интерактивно, например так:
mysql db_name
Однако, также возможно поместить SQL-запросы в файл и затем указать mysql читать входные данные из этого файла. Для этого создайте текстовый файл text_file, содержащий запросы, которые вы хотите выполнить. Затем вызовите mysql следующим образом:
mysql db_name < text_file
Если вы поместите запрос USE
в качестве первого запроса в файле, нет необходимости указывать имя базы данных в командной строке: db_name
mysql < text_file
Если вы уже работаете с mysql, вы можете выполнить скрипт SQL-файла с помощью команды source или команды \.:
mysql> source file_name
mysql> \. file_name
Иногда вам может потребоваться, чтобы ваш скрипт отображал информацию о прогрессе пользователю. Для этого вы можете вставить запросы такого вида:
SELECT '<info_to_display>' AS ' ';
Показанный запрос выводит <info_to_display>.
Вы также можете вызвать mysql с опцией --verbose, которая приводит к отображению каждого запроса перед результатом, который он производит.
mysql игнорирует символы Unicode byte order mark (BOM) в начале входных файлов. Ранее он считывал их и отправлял их на сервер, что приводило к синтаксической ошибке. Наличие BOM не заставляет mysql изменить его набор символов по умолчанию. Для этого вызовите mysql с такой опцией, как --default-character-set=utf8.
Дополнительную информацию о режиме пакетной обработки см. в Разделе 3.5, «Использование mysql в пакетном режиме».
© 2025 Oracle
Licensed under the GPLv2 License.