9.6 댓글 구문
MySQL Server에서는 다음의 3 개의 코멘트 스타일을 지원합니다.
"
#
"문자에서 줄의 끝까지."
--
"시퀀스에서 줄 끝까지. MySQL은 "--
"(이중 대시) 코멘트 스타일은 두 번째 대시에 적어도 하나의 공백 또는 제어 문자 (공백, 탭, 개행 등)을 계속해야합니다. 섹션 1.8.2.5 "주석의 시작으로"- "" 에 명시된대로이 구문은 표준 SQL의 코멘트의 문법과는 조금 다릅니다.C 프로그래밍 언어와 같이
/*
시퀀스에서 다음*/
시퀀스까지 이 구문에서는 시작과 끝 시퀀스는 같은 줄에있을 필요는 없기 때문에 여러 줄에 걸쳐 댓글을 쓰는 수 있습니다.
다음 예제는 3 개의 코멘트 스타일이 모두 나와 있습니다.
mysql>SELECT 1+1; # This comment continues to the end of line
mysql>SELECT 1+1; -- This comment continues to the end of line
mysql>SELECT 1 /* this is an in-line comment */ + 1;
mysql>SELECT 1+
/*
this is a
multiple-line comment
*/
1;
중첩 된 댓글이 지원되지 않습니다. (일부 조건에서는 중첩 된 코멘트가 가능한 경우가 있지만, 일반적으로 가능하지 않고 사용자가 중첩 된 주석을 사용하지 마십시오.)
MySQL Server는 C- 스타일 댓글의 변형이 일부 지원되고 있습니다. 이러한에서는 다음과 같은 형식의 코멘트를 사용하여 MySQL 확장을 포함하고 있지만, 이식성을 유지하고있는 코드를 작성할 수 있습니다.
/ *! MySQL-specific code
* /
이 경우 MySQL Server는 다른 SQL 명령문과 댓글의 코드를 분석하여 실행되지만 다른 SQL 서버는 확장 기능을 인식하지 않습니다. 예를 들어, MySQL Server는 다음의 문에서 STRAIGHT_JOIN
키워드를 인식하지만 다른 서버는 인식하지 않습니다.
SELECT / *! STRAIGHT_JOIN * / col1 FROM table1, table2 WHERE ...
" !
"문자 다음에 버전 번호를 추가하면 코멘트의 구문은 MySQL의 버전이 지정된 버전 번호 이상인 경우에만 실행됩니다. 다음 댓글에 TEMPORARY
키워드는 MySQL 3.23.02 이후 서버에서만 실행됩니다.
CREATE / *! 32302 TEMPORARY * / TABLE t (a INT);
위의 댓글 구문은 mysqld 서버가 SQL 문을 구문 분석에 적용됩니다. mysql 클라이언트 프로그램은 문을 서버로 전송하기 전에 그 일부의 구문 분석을 수행합니다. (이것은 여러 문 입력 줄에서 문 경계를 결정하기 위해 수행됩니다.)
이 형식의 코멘트 ( /*!12345 ... */
) 서버에 저장되지 않습니다. 스토어드 루틴의 댓글이 형식이 사용되는 경우,이 댓글은 서버에 유지되지 않습니다.
여러 줄 /* ... */
주석에서 \C
등의 짧은 mysql 명령을 사용하는 것은 지원되지 않습니다.