저장점 이후에 실행된 모든 명령을 롤백 설립되었습니다. 세이브포인트는 유효하게 유지되며 롤링될 수 있습니다. 필요한 경우 나중에 다시 확인하세요.
세이브포인트로 롤백암시적으로 이름이 지정된 이후에 설정된 모든 저장점을 삭제합니다. 저장점.
사용PostgreSQL :삭제하지 않고 저장점을 파괴하려면 설정된 후 실행된 명령의 효과.
설정되지 않은 저장점 이름을 지정하는 것은 오류입니다.
커서는 다소 비트랜잭션적인 동작을 합니다. 세이브포인트로. 저장점 내에서 열린 모든 커서는 저장점이 롤백되면 닫힙니다. 이전에 열린 커서는 a의 영향을 받습니다.가져오기11821_11931가져오기다음을 가리키는 채로 두었습니다(즉,가져오기롤백되지 않습니다). 커서를 닫는 것은 아닙니다 롤백하여 취소할 수도 있습니다. 실행으로 인해 다음이 발생하는 커서 중단하려는 트랜잭션은 실행할 수 없는 상태가 되므로, 다음을 사용하여 거래를 복원할 수 있습니다.세이브포인트로 롤백, 커서는 더 이상 사용되었습니다.
이후 실행된 명령의 효과를 취소하려면my_배트맨 토토설립됨:
세이브포인트로 롤백 my_배트맨 토토;
커서 위치는 저장점 롤백의 영향을 받지 않습니다:
시작;
SELECT 1 UNION SELECT 2에 대해 foo 커서를 선언하십시오.
세이브포인트 foo;
foo에서 1개를 가져옵니다.
?열?
----------
1
저장점 foo로 롤백;
foo에서 1개를 가져옵니다.
?열?
----------
2
커밋;
그SQL표준은 다음을 지정합니다. 그게 핵심 단어세이브포인트이다 필수이지만PostgreSQL그리고오라클생략 가능합니다. SQL은 다음만 허용합니다.일, 아님거래, 뒤에 의미 없는 단어로롤백. 또한 SQL에는 선택적 절이 있습니다.및 [ 아니요 ] 체인현재는 아님 지원자:PostgreSQL. 그렇지 않은 경우 이 명령은 SQL 표준을 따릅니다.