Справочное руководство по MySQL версии 4.1.1-alpha



         

Глава 3.2 Ввод запросов - часть 3


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

mysql> SELECT -> USER() -> \c mysql>

Обратите внимание на метку: после ввода команды \c она снова принимает вид mysql>, показывая, что программа mysql перешла в режим ожидания указаний.

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

Метка Значение

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

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

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

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

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

mysql> SELECT USER() ->

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

mysql> SELECT USER() -> ; +--------------------+ | USER() | +--------------------+ | joesmith@localhost | +--------------------+

Метки '> и "> используются при сборе строк. В MySQL строки можно заключать как в одинарные (`''), так и в двойные (`"') кавычки (можно, например, написать 'hello' или "goodbye"), к тому же, mysql позволяет вводить строковые выражения, состоящие из нескольких строчек текста. Метка '> или "> обозначает, что вы ввели строку, открывающуюся символом кавычек `'' или `"', но еще не ввели завершающую строковое выражение закрывающую кавычку.

Это, конечно, нормально, если вы собираетесь создать большое строковое выражение из нескольких строчек. Но это не слишком частый случай. Гораздо чаще оказывается, что вы просто забыли поставить закрывающую кавычку. Например:




Содержание  Назад  Вперед