이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다와이즈 토토 : 문서 : 17 : 37 장. 트리거버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

제 32 장. 메이저 토토 사이트

이 장에서는 메이저 토토 사이트 기능을 작성하는 방법에 대해 설명합니다. 방아쇠 기능은 C 또는 사용 가능한 일부에서 작성할 수 있습니다. 절차 언어. 현재 a SQL 언어 메이저 토토 사이트 기능.

32.1. 메이저 토토 사이트 개요 행동

메이저 토토 사이트는 AN 전후에 실행하도록 정의 될 수 있습니다삽입, 업데이트또는삭제작동, 수정 된 행당 한 번 또는 당시 한 번SQL진술. 메이저 토토 사이트 인 경우 이벤트가 발생하면 메이저 토토 사이트의 기능이 호출됩니다 이벤트를 처리하기에 적절한 시간.

메이저 토토 사이트 함수는 메이저 토토 사이트 전에 정의되어야합니다 그 자체가 만들 수 있습니다. 메이저 토토 사이트 함수는 다음과 같이 선언해야합니다 인수가없고 유형을 반환하는 함수메이저 토토 사이트. (메이저 토토 사이트 함수는 그것의 메이저 토토 사이트 기능을받습니다 특수 통과를 통한 입력TriggerData구조, 형태가 아닙니다 일반 기능 인수.)

일단 적절한 메이저 토토 사이트 함수가 생성되면 메이저 토토 사이트는로 설정되었습니다.메이저 토토 사이트 생성. 같은 메이저 토토 사이트 기능은 여러 메이저 토토 사이트에 사용할 수 있습니다.

두 가지 유형의 메이저 토토 사이트가 있습니다 : 당당 메이저 토토 사이트 및 진술 당 메이저 토토 사이트. 당발 메이저 토토 사이트에서 메이저 토토 사이트 기능은 방아쇠를 발사 한 진술. 대조적으로, 진술 당 적절한 진술이있는 경우 메이저 토토 사이트가 한 번만 호출됩니다. 그 영향을받는 행의 수에 관계없이 실행 성명. 특히, 0 행에 영향을 미치는 진술 여전히 해당 가능한 모든 실행을 초래합니다 진술 당 메이저 토토 사이트. 이 두 가지 유형의 메이저 토토 사이트는입니다 때때로"로우 레벨 메이저 토토 사이트 "and"명령문 수준 메이저 토토 사이트 "각각.

성명서 수준"전"메이저 토토 사이트 성명서가 무엇이든하기 시작하기 전에 자연스럽게 발사 성명서 수준"After"성명서의 끝에서 발사를 메이저 토토 사이트합니다. 줄 수준"전"즉시 발사를 메이저 토토 사이트합니다 특정 행이 작동하기 전에, 행 수준"After"끝에서 불을 방지합니다 진술 (그러나 어떤 진술 수준 이전"After"메이저 토토 사이트).

진술 당 메이저 토토 사이트로 호출 된 메이저 토토 사이트 함수 항상 반환NULL. 메이저 토토 사이트 기능 당면 메이저 토토 사이트로 호출하면 테이블 행 (값의 값 유형Heappuple) 호출 그들이 선택한 경우 집행자. 행 앞에서 발사 된 행 수준 메이저 토토 사이트 운영에는 다음과 같은 선택이 있습니다.

  • 반환 할 수 있습니다NULL현재 행 작동. 이것은 집행자에게 지시합니다 호출 한 로우 레벨 작업을 수행하지 않습니다 메이저 토토 사이트 (특정의 삽입 또는 수정 테이블 행).

  • 로드 레벨 용삽입and업데이트메이저 토토 사이트 전용, 반환 행은 삽입 될 행이되거나 교체 할 행이됩니다. 행이 업데이트 중입니다. 이를 통해 메이저 토토 사이트 기능이 가능합니다 삽입 또는 업데이트중인 행을 수정합니다.

이러한 행동 중 하나는 결과와 동일한 행을 전달한 결과 (즉,NEW삽입and업데이트메이저 토토 사이트,old삭제메이저 토토 사이트).

로드 레벨 메이저 토토 사이트에 대한 반환 값은 무시됩니다 수술 후에, 그래서 그들은 돌아올 수 있습니다NULL.

동일한 이벤트에 대해 둘 이상의 메이저 토토 사이트가 정의 된 경우 같은 관계에서, 메이저 토토 사이트는 알파벳순으로 발사됩니다. 메이저 토토 사이트 이름으로 주문하십시오. 메이저 토토 사이트 이전의 경우 각 메이저 토토 사이트에 의해 반환 된 수정 행은 다음 메이저 토토 사이트에 입력. 메이저 토토 사이트가 돌아 오기 전의 경우NULL, 작업이 포기되고 후속 메이저 토토 사이트는 해고되지 않습니다.

일반적으로 메이저 토토 사이트가 선택되기 전의 행은 OR을 확인합니다 삽입 또는 업데이트 될 데이터 수정. 을 위한 예를 들어, 전 메이저 토토 사이트가 전류를 삽입하는 데 사용될 수 있습니다. 타임 스탬프 열로 시간을 보내거나 두 가지 요소를 확인하십시오. 행은 일관성이 있습니다. 메이저 토토 사이트 후 행이 가장 현명합니다 다른 테이블로 업데이트를 전파하거나 다른 테이블에 대한 일관성 검사. 이것의 이유 노동의 분열은 이후 방아쇠가 확실하다는 것입니다. 행의 최종 값을 보는 동안, 전 방향 방향 할 수 없다; 메이저 토토 사이트가 발사되기 전에 다른 것이있을 수 있습니다. 이전에 방아쇠를 만들 이유가없는 경우 이후에, 이전 사례는 더 효율적입니다. 작업에 대해 끝까지 저장할 필요가 없습니다. 성명.

메이저 토토 사이트 함수가 SQL 명령을 실행하면 이들은 이들입니다 명령은 다시 메이저 토토 사이트를 발사 할 수 있습니다. 이것은 계단식이라고합니다 메이저 토토 사이트. 수에 직접 제한이 없습니다 캐스케이드 레벨. 캐스케이드가 a를 유발할 수 있습니다 동일한 메이저 토토 사이트의 재귀 호출; 예를 들어, an삽입메이저 토토 사이트가 명령을 실행할 수 있습니다 추가 행을 동일한 테이블에 삽입하여를 유발합니다.삽입다시 해고 될 메이저 토토 사이트. 그것 무한을 피하려는 메이저 토토 사이트 프로그래머의 책임입니다 그러한 시나리오에서의 재귀.

메이저 토토 사이트가 정의되면 인수를 지정할 수 있습니다. 그것을 위해.목적 메이저 토토 사이트 정의에 인수를 포함하는 것은 허용하는 것입니다 동일하게 호출하기 위해 비슷한 요구 사항을 가진 다른 메이저 토토 사이트 기능. 예를 들어, 일반화 된 방아쇠가있을 수 있습니다 인수로서 두 개의 열 이름을 가져 오는 기능 하나의 현재 사용자와 현재 시간 스탬프 다른. 올바르게 작성하면이 메이저 토토 사이트 기능이 있습니다 특정 테이블과 무관하게 메이저 토토 사이트됩니다. 그래서 동일한 기능을 사용할 수 있습니다삽입적절한 열이있는 테이블의 이벤트, 자동으로 예를 들어 트랜잭션 테이블에서 레코드 생성을 추적합니다. 또한 정의 된 경우 마지막 업데이트 이벤트를 추적하는 데 사용될 수 있습니다.업데이트메이저 토토 사이트.

메이저 토토 사이트를 지원하는 각 프로그래밍 언어에는 자체가 있습니다 메이저 토토 사이트 입력 데이터를 메이저 토토 사이트 기능. 이 입력 데이터에는 메이저 토토 사이트 유형이 포함됩니다 이벤트 (예 :삽입또는업데이트)와 그 주장이 있었다 에 나열됨메이저 토토 사이트 만들기. a 로드 레벨 메이저 토토 사이트, 입력 데이터에는도 포함됩니다.NEW삽입업데이트메이저 토토 사이트 및/또는old업데이트and삭제메이저 토토 사이트. 진술 수준 메이저 토토 사이트는 현재 진술에 의해 수정 된 개별 행.