2025년 9월 25일:토토 커뮤니티 : 토토
이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 44.8. 스포츠 토토 베트맨 관리버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

46.9. 거래 관리

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

다음은 예입니다:

프로시저 생성 transaction_test1()
언어 plpythonu
AS $$
i가 범위(0, 10)에 있는 경우:
    plpy.execute("테스트 1에 삽입 (a) 값 (%d)" % i)
    내가 % 2 == 0인 경우:
        plpy.commit()
    그 외:
        plpy.롤백()
$$;

전화 transaction_test1();

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