SavePoint 이후에 실행 된 모든 명령을 토토합니다. 설립되었습니다. 저장 포인트는 유효하며 토토 할 수 있습니다 나중에 다시 필요한 경우.
SavePoint 로의 토토암시 적으로 이름이 지정된 후 설정된 모든 저장 포인트를 파괴합니다 SavePoint.
usePostgreSQL : 문서명령의 효과를 버리지 않고 저장 포인트를 파괴하려면 그것이 설립 된 후에 실행되었습니다.
설정되지 않은 SavePoint 이름을 지정하는 것은 오류.
커서는에 대해 다소 비 번역 행동이 있습니다 저장 포인트. SavePoint 내부에서 열리는 커서는 다음과 같습니다. SavePoint가 토토되면 닫힙니다. 이전에 열린 경우 커서는 A의 영향을받습니다.fetch또는움직임저장 점 내부의 명령 나중에 토토 된 커서는의 위치에 남아 있습니다.fetch그것을 가리키는 상태로 두었습니다 Cursor Motion으로 인한fetch그렇지 않습니다 토토). 토토으로 커서를 닫는 것은 실행 취소되지 않습니다. 어느 하나. 그러나 커서의 쿼리로 인한 다른 부작용 (예 : 쿼리가 호출하는 휘발성 함수의 부작용과 같은)are토토되면 나중에 토토되는 저장 포인트 중에 발생합니다. 누구의 커서 실행은 중단이 중단 될 수 없게됩니다. 상태, 따라서 거래를 사용하여 복원 할 수있는 동안SavePoint 로의 토토, 커서는 더 이상 될 수 없습니다 사용된.
이후에 실행 된 명령의 효과를 취소하려면my_savepoint설립 :
SavePoint my_savepoint; 토토
커서 위치는 SavePoint 토토의 영향을받지 않습니다 :
시작; Select 1 Union Select 2에 대한 foo 커서 선언; SavePoint foo; Foo에서 1을 가져 오십시오. ?열? --------- 1 SavePoint foo 로의 토토; Foo에서 1을 가져 오십시오. ?열? --------- 2 저지르다;
theSQL표준 지정 그게 핵심 단어SavePoint의무적입니다. 하지만PostgreSQLandOracle생략 허용. SQL 허용 전용Work, 아님거래, 이후 소음 단어로토토. 또한 SQL에는 선택적 조항이 있습니다.및 [아니요] 체인현재는 아닙니다 지원PostgreSQL. 그렇지 않으면이 명령은 SQL 표준을 준수합니다.
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
토토 준비 | up | SavePoint |