Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Учебное пособие по MySQL /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Использование mysql в пакетном режиме - Программирование от RIN.RU
Использование mysql в пакетном режиме

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


shell> mysql < batch-file


Если вы работаете с mysql в ОС Windows, и некоторые из специальных символов, содержащихся в пакетном файле, могут вызвать проблемы, воспользуйтесь следующей командой:


dos> mysql -e "source batch-file"


Если необходимо указать параметры соединения в командной строке, она может иметь следующий вид:


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


Работая с mysql таким образом, вы, в сущности, создаете сценарий и затем исполняете его.


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


Зачем вообще нужны сценарии? Причин тому несколько:


  • При необходимости частого (ежедневного или хотя бы еженедельного) запуска одного и того же запроса сценарий позволяет избавиться от многократного набора этого запроса.

  • Можно создавать новые запросы, подобные уже существующим, просто копируя и затем изменяя файлы сценариев.

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

  • Если ваш запрос выводит на экран много текста, его можно просмотреть постранично, не мучаясь догадками относительно убежавшей за край экрана части результатов:


    shell> mysql < batch-file | more


  • Выводимые запросом результаты можно сохранить в файле для последующей обработки:


    shell> mysql < batch-file > mysql.out


  • Свой сценарий вы можете дать кому-нибудь еще, чтобы он тоже мог воспользоваться содержащимися в сценарии командами.

  • В некоторых случаях работать в интерактивном режиме просто не получается. И здесь без пакетного режима не обойтись.


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


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


А в пакетном - вот так:


species
bird
cat
dog
hamster
snake


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


В командную строку mysql можно включать и сценарии - при помощи команды source:


mysql> source filename;




 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Подсоединение к серверу и отсоединение от него

Ввод запросов

Создание и использование базы данных

Получение информации о базах данных и таблицах

Примеры стандартных запросов

Запросы проекта "Близнецы" (Twin Project)

Использование MySQL совместно с Apache

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь