RELEASE SAVEPOINT

Nome

RELEASE SAVEPOINT -- destrói um ponto de salvamento definido anteriormente

Sinopse

RELEASE [ SAVEPOINT ] nome_do_ponto_de_salvamento

Descrição

O comando RELEASE SAVEPOINT destrói o ponto de salvamento definido anteriormente na transação corrente. [1]

Destruir um ponto de salvamento faz com que este não fique mais disponível como ponto para desfazer (rollback), mas não ocasiona nenhum outro comportamento visível pelo usuário. Não desfaz os efeitos dos comandos executados após o estabelecimento do ponto de salvamento (Para fazer isto deve ser consultado o comando ROLLBACK TO SAVEPOINT). A destruição de um ponto de salvamento quando não for mais necessário pode permitir ao sistema recuperar alguns recursos antes do fim da transação.

O comando RELEASE SAVEPOINT também destrói todos os pontos de salvamento estabelecidos depois que o ponto de salvamento especificado foi estabelecido.

Parâmetros

nome_do_ponto_de_salvamento

O nome do ponto de salvamento a ser destruído.

Observações

Especificar um nome de ponto de salvamento que não foi definido anteriormente é um erro.

Não é possível liberar um ponto de salvamento quando a transação está no estado interrompido (aborted).

Se vários pontos de salvamento tiverem o mesmo nome, somente será liberado o que foi definido mais recentemente.

Exemplos

Para estabelecer um ponto de salvamento e destruí-lo posteriormente:

BEGIN;
    CREATE TEMPORARY TABLE tabela1 (col1 int) ON COMMIT DROP;
    INSERT INTO tabela1 VALUES (3);
    SAVEPOINT meu_ponto_de_salvamento;
    INSERT INTO tabela1 VALUES (4);
    RELEASE SAVEPOINT meu_ponto_de_salvamento;
    SELECT * FROM tabela1;
COMMIT;

 col1
------
    3
    4
(2 linhas)

A transação acima inseriu tanto o 3 quanto o 4.

Compatibilidade

Este comando está em conformidade com o padrão SQL:2003. O padrão especifica que a palavra chave SAVEPOINT é obrigatória, mas o PostgreSQL permite que seja omitida.

Consulte também

BEGIN, COMMIT, ROLLBACK, ROLLBACK TO SAVEPOINT, SAVEPOINT

Notas

[1]

DB2 — O comando RELEASE SAVEPOINT é utilizado para indicar que o aplicativo não deseja mais que o ponto de salvamento especificado seja mantido. Após este comando ser submetido, não é mais possível desfazer até o ponto de salvamento. Todos os pontos de salvamento aninhados ao ponto de salvamento especificado também são liberados. DB2 Version 9 for Linux, UNIX, and Windows (N. do T.)

SourceForge.net Logo CSS válido!