이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다토토 : 문서 : 17 : 50.3. 파서 스테이지버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

44.3.

theParser Stage두 가지로 구성됩니다

  • the파서정의gram.yandscan.lUNIX 도구를 사용하여 구축되었습니다BisonandFlex.

  • the변환 과정

44.3.1.

파서는 쿼리 문자열을 확인해야합니다 (Parse Tree가 구축되어 건조되었습니다BisonandFlex.

theLexer파일에 정의되어 있습니다scan.l식별자, TheSQL 키워드등. 모든 키 단어 또는토큰is

파서는 파일에 정의되어 있습니다gram.y| 일련의 세트로 구성됩니다문법 규칙and행동규칙이있을 때마다 실행됩니다

파일scan.lscan.c사용Flexandgram.y|gram.c사용Bison. 이러한 변형 후Flex또는Bison호출.

참고 :언급 된 변환 및makefiles토토 사이트 추천소스

자세한 설명Bison또는 문법 규칙gram.y의 범위를 벗어납니다FlexandBison. 당신은 익숙해야합니다Bison시작하기 전에gram.y그렇지 않으면 거기에서 무슨 일이 일어나는지 이해하지 못할 것입니다.

44.3.2.

파서 스테이지는 고정 규칙 만 사용하여 구문 분석 트리를 만듭니다.변환 과정나무를 손으로 가져갑니다쿼리 트리.

시맨틱 분석에서 원시 구문 분석을 분리하는 이유시작, 롤백등)select또는업데이트), IT

변환 프로세스에 의해 생성 된 쿼리 트리는 다음과 같습니다FUNCCALL구문 분석 트리의 노드가 나타납니다funcexpr또는aggref