Você está na página 1de 12

Transaes

Transao:

Conjunto de operaes Atmicas de BD


executadas de forma indivisvel.

Integridade das
Informaes - Conceito
ACID:

Atomicidade: Indivisibilidade da operao;


Todas operaes realizadas ou ento
nenhuma delas.
Consistncia: integridade da base de dados
ao final da transao
Isolamento: imunidade a interferncias
externas
Durabilidade: E fato da transao sobrevive
a falha e persiste enquanto ao modificada
ou desfeita por outra transao

Exemplo de Transao
Begin Trans:
Inclui dados pessoais
Inclui dados funcionais
Atualiza vagas
Inclui dados de pagto

End Trans.

Archive Log

Arquivo que mantm a imagem das


atualizaes feitas sobre o BD
.Utilizado para retorno de
transaes, recuperao do Banco
de dados ou para Backup on-line.

Funcionamento do Log

A cada ao executada no BD,


gravada a ao e contedo dela no
arquivo de log.

Transaes

Comea quando for executada a


primeira instruo SQL executvel
Termina com um dos seguintes
eventos
COMMIT ou ROLLBACK
Instruo DDL ou DCL ( commit
automtico)
O usurio sai (commit automtico)
O Sistema cai (roolback automtico)

Transaes

Exemplo
Apague todos os registros da tabela
EMP e verifique a quantidade de
registros.
Execute: ROLLBACK;
Selecione todos os registros da tabela
EMP e verifique a quantidade de
registros.
O que aconteceu?

Transaes

Instrues explcitas

COMMIT => Finaliza a transao tornando as


alteraes permanentes
SAVEPOINT nome=> Marca um ponto de
gravao dentro da transao atual
ROLLBACK [TO SAVEPOINT nome] Finaliza a
transao descartando as alteraes
pendentes. Com a opo TO SAVEPOINT
descarta as alteraes subseqentes ao
savepoint escolhido.

Deadlock (Abrao
Mortal)

Situao em que 2 ou mais


transaes esto em um simultneo
estado de espera, por bloqueio dos
dados, cada qual aguardando que
uma das duas libere um bloqueio
antes que ela possa prosseguir
Ocorre em processos concorrentes

Exemplo de Deadlock

Ainda sobre deadlocks


Se no usarmos o bloqueio, ou
desbloqueio do item de dados,
poderemos chegar a resultados
inconsistentes.
Os deadlocks podem ser preferveis a
estados incosistentes, j que podem ser
tratados por meio de rollback (reverso)
da transao, enquanto que os estados
inconsistentes podem originar problemas
reais que no so tratados pelos SGBD.

Você também pode gostar