Spec-Zone .ru
спецификации, руководства, описания, API

3.5. Используя mysql в Пакетном режиме

В предыдущих разделах Вы использовали mysql в интерактивном режиме, чтобы ввести запросы и просмотреть результаты. Можно также выполнить mysql в пакетном режиме. Чтобы сделать это, поместите команды, которые Вы хотите выполнить в файле, затем сказать mysql читать свой ввод из файла:

shell> mysql < batch-file

Если Вы выполняете mysql под Windows и имеете некоторые специальные символы в файле, которые вызывают проблемы, можно сделать это:

C:\> mysql -e "source batch-file"

Если Вы должны определить параметры соединения на командной строке, команда могла бы быть похожей на это:

shell> mysql -h host -u user -p < batch-fileEnter password: ********

Когда Вы используете mysql этот путь, Вы создаете файл сценария, затем выполняя сценарий.

Если Вы хотите, чтобы сценарий продолжался, даже если некоторые из операторов в нем производят ошибки, следует использовать --force параметр командной строки.

Почему использование сценарий? Вот несколько причин:

Выходной формат значения по умолчанию отличающийся (более краткий), когда Вы выполняете mysql в пакетном режиме чем тогда, когда Вы используете это в интерактивном режиме. Например, вывод SELECT DISTINCT species FROM pet похож на это, когда mysql выполняется в интерактивном режиме:

+---------+| species |+---------+| bird    || cat     || dog     || hamster || snake   |+---------+

В пакетном режиме вывод похож на это вместо этого:

speciesbirdcatdoghamstersnake

Если Вы хотите получить интерактивный выходной формат в пакетном режиме, использовать mysql -t. Чтобы отозваться эхом к выводу, команды, которые выполняются, используют mysql -vvv.

Можно также использовать сценарии от подсказки mysql при использовании source команда или \. команда:

mysql> source filename;mysql> \.
        filename

См. Раздел 4.5.1.5, "Выполняя SQL-операторы от Текстового файла", для получения дополнительной информации.