Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка СУБД MySQL Borland Кузин.doc
Скачиваний:
85
Добавлен:
13.05.2015
Размер:
2.85 Mб
Скачать
    1. Использованиеmysqlв пакетном режиме

Запускать mysqlможно и в пакетном режиме. Для этого нужно собрать все команды в один файл (сценарий) и передать его на исполнениеmysql:

mysql-hhost-uuser–p< имя_пакетного_файла

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

mysql.bat< имя_пакетного_файла

Для примера создадим сценарий, содержащий одну команду для вывода всех БД:

show databases;

Запустим этот сценарий, передав его имя в качестве параметра командному файлу:

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

mysql.bat< имя_пакетного_файла > имя_файла_результатов

Пример выполнения команды:

Файл результатов:

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

mysql.bat< имя_пакетного_файла |more

    1. Выполнение запросов

Выполнение запросов (команд) SQLявляется основным назначением программыmysql.exe. Примером запроса является получение имени версииMySQL-сервера:

select version();

При выполнении запросов необходимо знать следующее:

  • Команда обычно состоит из SQL-выражения, за которым следует точка с запятой. (Из этого правила есть и исключения - команды без точки с запятой. Одним из них является упомянутая выше команда QUIT).

  • Когда пользователь вводит команду, mysqlотправляет ее серверу для выполнения и выводит на экран сначала результаты, а затем - новую строкуmysql>, что означает готовность к выполнению новых команд.

  • mysql выводит результаты работы запроса в виде таблицы (строк и столбцов). В первой строке этой таблицы содержатся заголовки столбцов, а в следующих строках - собственно результаты. Обычно заголовками столбцов становятся имена, полученные из таблиц базы. Если же извлекается не столбец таблицы, а значение выражения (как это происходит в приведенном выше примере), mysqlдает столбцу имя запрашиваемого выражения.

  • mysql сообщает количество возвращаемых строк и время выполнения запроса, что позволяет в некоторой степени составить представление о производительности сервера.

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

Mysqlможно использовать для вычисления значений выражений (в качестве калькулятора). Пример:

SELECT SIN(3*PI()/4), (4+1)*5;

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

Вот пример несложного выражения, занимающего несколько строк:

Обратите внимание на то, как изменилась метка командной строки (с mysql>на->) после ввода первой строки этого запроса. Таким образом программа mysql показывает, что завершенного выражения она пока что не получила и ожидает его полного ввода.

В этой таблице приведены все возможные варианта вида метки командной строки и соответствующие им состояния mysql:

Метка

Значение

mysql>

Ожидание новой команды

    ->

Ожидание следующей строки многострочной команды

    '>

Ожидание следующей строки, сбор строкового выражения, начинающегося с одиночной кавычки (')

    ">

Ожидание следующей строки, сбор строкового выражения, начинающегося с двойной кавычки (")

Если вы решите отменить исполнение набираемой команды, наберите \c: