이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 42.10. 사설 토토 관리버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

42.10. 거래 관리#

최상위 레벨 또는 익명 코드 블록에서 호출된 프로시저에서(DOcommand)를 최상위 레벨에서 호출하면 트랜잭션을 제어할 수 있습니다. 현재 트랜잭션을 커밋하려면커밋명령. 현재 트랜잭션을 롤백하려면롤백명령. (SQL 명령을 실행할 수 없다는 점에 유의하세요.커밋또는롤백경유spi_exec또는 유사합니다. 이 함수들을 이용해서 해야 합니다.) 트랜잭션이 종료되면 자동으로 새로운 트랜잭션이 시작되므로 이에 대한 별도의 명령은 없습니다.

다음은 예입니다:

프로시저 생성 transaction_test1()
언어 pltcl
AS $$
set i 0 $i < 10 incr i 
    spi_exec "test1에 삽입(a) 값($i)"
    if $i % 2 == 0 
        커밋하다
     그렇지 않으면 
        롤백

명시적인 하위 트랜잭션이 활성화되면 트랜잭션을 종료할 수 없습니다.