Spec-Zone.ru › MySQL 5.7

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.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/mysql-batch-commands.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API