• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 서비스
    • MySQL유지보수
    • MySQL라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.1 한글메뉴얼) [close]
  • 1. MySQL 5.1 Reference Manual
  • 2. Installing and MySQL 업그레이드하기
  • 3. 사용 설명서 (Tutorial)
  • 4. MySQL 프로그램 사용하기
  • 5. 데이터베이스 관리
  • 6. 리플리케이션
  • 7. 최적화 (Optimization)
  • 8. 클라이언트 및 유틸리티 프로그램
  • 9. 언어 구조 (Language Structure)
  • 1. 리터럴 값 (Literal Values)
    2. 아이덴티파이어 (Identifiers)
    3. 사용 지정 단어 (Reserved Words)
    4. 사용자 정의 변수
    5. 코멘트 신텍스
  • 10. 문자 셋 지원
  • 24. API 및 라이브러리
  • 25. Connectors

9.5. 코멘트 신텍스

 

MySQL 서버는 세 가지 형태의 코멘트 스타일을 지원한다:

  • ‘#’문자를 사용.
  • ‘-- ’ 시퀀스를 사용한 라인. MySQL에서는, ‘-- ’ (double-dash) 코멘트 스타일은 최소한 한 개의 화이트스페이스 (whitespace) 또는 제어 문자 (control character) (스페이스, 탭, 뉴라인(newline) 등등)가 두 번째 대쉬 (the second dash) 다음에 오도록 하고 있다. 이것은 표준 SQL 코멘트 신텍스와 차이가 있는 점이다.
  • C 프로그래밍에서와 같이 /* 시퀀스로 시작해서 */ 시퀀스로 끝나는 라인. 이 신텍스는 코멘트가 시작되는 라인이 끝나는 라인과 같을 필요가 없기 때문에 여러 줄의 코멘트를 작성할 수 있도록 해 준다.

아래의 예문은 위의 세 가지 형태의 코멘트를 보여 주고 있다:

 

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 서버는 C-스타일의 코멘트 중의 몇몇 변형 스타일을 지원한다. 이러한 것들은 아래의 형태를 사용해서 MySQL 확장 형태에 포함되는 코드를 작성할 수가 있다:

 

/*! MySQL-specific code */

 

위와 같은 경우, MySQL 서버는 코멘트에 포함되어 있는 코드를 다른 SQL 명령문 형태로 분석해서 실행을 하지만, 다른 SQL 서버는 이것을 무시한다. 예를 들면, MySQL 서버는 아래의 명령문에 있는 STRAIGHT_JOIN 키워드를 인식하지만, 다른 SQL 서버는 인식하지 못한다:

 

SELECT /*! STRAIGHT_JOIN */ col1 FROM table1,table2 WHERE ...

 

만일 여러분이 ‘!’ 문자 다음에 버전 정보를 추가한다면, 이 신텍스는 이렇게 지정된 MySQL 버전과 같거나 보다 늦게 출시된 서버에서만 실행이 된다. 아래의 코멘트에 있는 TEMPORARY 키워드는 MySQL 3.23.02 또는 그 이상 버전의 서버에서만 구동을 한다:

 

CREATE /*!32302 TEMPORARY */ TABLE t (a INT);

 

위에서 설명한 코멘트는 mysqld 서버가 SQL명령문을 분석하는 방식을 설명하는 것이다. 또한, mysql 클라이언트 프로그램은 서버에 명령문을 보내기 전에 몇 가지 파싱 동작을 실행하기도 한다. (이러한 동작은 다중 명령문 입력 라인 안에 있는 명령문의 범위를 판단하기 위해 실행된다.)

서울시 강남구 영동대로 602 6층  TEL: 02-6061-0006
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved