Поиск
Синтаксис комментариев
Сервер MySQL поддерживает три стиля комментариев:
- От символа '#'до конца строки.
- От последовательности '— ' до конца строки. Этот стиль поддерживается, начи
ная с версии MySQL 3.23.3. Отметим, что стиль комментария с '— ' требует, что-
бы за вторым тире следовал как минимум один пробел (или управляющий символ, такой как перевод строки). Этот синтаксис слегка отличается от стандартного стиля комментариев SQL (см. раздел .'--' как начало комментария)
- От последовательности 7*' до последовательности '*/'. Замыкающая последова
тельность не должна быть на той же строке, поэтому синтаксис позволяет писать
многострочные комментарии.
В следующем примере представлены все три стиля комментариев:
mysql SELECT 1+1; # Этот комментарий продолжается до конца строки
mysql SELECT 1+1; - Этот комментарий продолжается до конца строки
mysql SELECT I /* это внутристрочный комментарий */ + 1;
mysql SELECT 1+
/* А ЭТО
многострочный комментарий
V
Описанный выше синтаксис комментариев влияет на то, как сервер mysqld разбирает SQL-операторы. Клиентская программа mysql также выполняет некоторый предварительный анализ операторов, перед тем как отправлять их серверу. (Например, она делает это, чтобы определить границы операторов во входной строке с множеством операторов.) Однако, есть некоторые ограничения в том, как mysql разбирает комментарии/* ... */:
- Символы одинарной, двойной и обратной кавычки воспринимается для индика
ции начала помещенной в кавычки строки или идентификатора, даже внутри
комментария. Если открывающей кавычке в теле комментария не соответствует
закрывающая, анализатор не считает, что комментарий не закрыт. Если вы запус
каете mysql интерактивно, то можете обнаружить эту ситуацию по изменению
приглашения командной строки с mysql на ',; или ч. Упомянутая проблема
была решена в MySQL 4.1.1. - Точка с запятой внутри комментария воспринимается как завершение оператора
SQL, и то, что за ней следует, является началом следующего оператора. Эта про
блема была решена в MySQL 4.0.13.
В версиях MySQL, которые имеют эти недостатки, они проявляются как при интерактивном запуске mysql, так и тогда, когда вы помещаете команды в файл и применяете mysql в пакетном режиме с помощью команды mysql Сервер MySQL поддерживает три стиля комментариев:
- От символа '#'до конца строки.
- От последовательности '— ' до конца строки. Этот стиль поддерживается, начиная с версии MySQL 3.23.3. Отметим, что стиль комментария с '— ' требует, что-бы за вторым тире следовал как минимум один пробел (или управляющий символ, такой как перевод строки). Этот синтаксис слегка отличается от стандартного стиля комментариев SQL (см. раздел .'--' как начало комментария).
- От последовательности 7*' до последовательности '*/'. Замыкающая последовательность не должна быть на той же строке, поэтому синтаксис позволяет писать многострочные комментарии. В следующем примере представлены все три стиля комментариев: mysql> SELECT 1+1;# Этот комментарий продолжается до конца строки mysql> SELECT 1+1; - Этот комментарий продолжается до конца строки mysql> SELECT I /*это внутристрочный комментарий */ + 1; mysql> SELECT 1+ /* А ЭТО многострочный комментарий V 1; Описанный выше синтаксис комментариев влияет на то, как сервер mysqld разбирает SQL-операторы. Клиентская программа mysql также выполняет некоторый предваритель¬ный анализ операторов, перед тем как отправлять их серверу. (Например, она делает это, чтобы определить границы операторов во входной строке с множеством операторов.) Од¬нако, есть некоторые ограничения в том, как mysql разбирает комментарии/* ... */:
- Символы одинарной, двойной и обратной кавычки воспринимается для индикации начала помещенной в кавычки строки или идентификатора, даже внутри комментария. Если открывающей кавычке в теле комментария не соответствует закрывающая, анализатор не считает, что комментарий не закрыт. Если вы запускаете mysql интерактивно, то можете обнаружить эту ситуацию по изменению приглашения командной строки с mysql> на '>, "> или ч>. Упомянутая проблема была решена В MySQL 4.1.1.
- Точка с запятой внутри комментария воспринимается как завершение оператора SQL, и то, что за ней следует, является началом следующего оператора. Эта про блема была решена в MySQL 4.0.13. В версиях MySQL, которые имеют эти недостатки, они проявляются как при инте¬рактивном запуске mysql, так и тогда, когда вы помещаете команды в файл и применяете mysql в пакетном режиме с помощью команды mysql < имя_файла. имя_файла.