Uma transação é uma unidade atômica de trabalho que ou estar...
- BEGIN_TRANSACTION: Marca o início da execução da transação.
- READ ou WRITE: Especifica operações de leitura ou gravação em itens do banco de dados, que são executadas como parte de uma transação.
I. Especifica que as operações READ e WRITE da transação terminaram e marca o fim da execução da transação. Entretanto, nesse ponto é necessário verificar se as mudanças introduzidas pela transação podem ser permanentemente aplicadas ao banco de dados (efetivadas), ou se a transação deverá ser abortada porque viola a serialização, ou por alguma outra razão.
II. Indica término com sucesso da transação, de forma que quaisquer alterações (atualizações) executadas poderão ser seguramente efetivadas no banco de dados e não serão desfeitas.
III. Indica que uma transação não terminou com sucesso, de forma que quaisquer mudanças ou efeitos que a transação possa ter aplicado ao banco de dados deverão ser desfeitas.
As operações I, II e III correspondem, correta e respectivamente, a:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - END_TRANSACTION; COMMIT_TRANSACTION; ROLLBACK.
Para resolver essa questão, é necessário entender o conceito de transações em um banco de dados. Uma transação é definida como uma sequência de operações executadas como uma única unidade lógica de trabalho. As propriedades de uma transação são normalmente descritas pelo acrônimo ACID, que representa Atomicidade, Consistência, Isolamento e Durabilidade.
A questão descreve três operações que são comuns no gerenciamento de transações:
- END_TRANSACTION: Esta operação indica que a transação chegou ao seu fim, mas ainda há a necessidade de verificar se as alterações podem ser efetivadas ou se a transação precisa ser abortada, correspondendo à descrição dada em I.
- COMMIT_TRANSACTION: Esta operação é utilizada quando uma transação é concluída com sucesso e suas alterações podem ser permanentemente aplicadas ao banco de dados, correspondendo à operação descrita em II.
- ROLLBACK: Esta operação reverte todas as ações de uma transação caso ela não termine com sucesso, desfazendo todas as mudanças, conforme descrito em III.
Com base na descrição fornecida pela questão e o entendimento das operações padrão em sistemas de banco de dados, podemos concluir que a alternativa correta é a C, pois ela apresenta a sequência correta de operações que correspondem às descrições I, II e III, respectivamente:
- END_TRANSACTION - Confirma o fim da transação, aguardando a decisão de efetivação ou abortamento.
- COMMIT_TRANSACTION - Indica o sucesso da transação e a possibilidade de tornar as alterações permanentes.
- ROLLBACK - Reverte as operações da transação em caso de falha ou não cumprimento dos requisitos de integridade.
Portanto, a alternativa C é a correta, pois reflete os termos padrões usados para descrever as operações realizadas durante o gerenciamento de transações em bancos de dados.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
As SQL's do TCL (Transaction Control Language) de acordo com o ANSI SQL são:
COMMIT, SAVEPOINT, SET TRANSACTION, ROLLBACK, BEGIN TRANSACTION e END TRANSACTION;
As SQL abaixo podem ter, também, outros nomes:
COMMIT: COMMIT WORK ou COMMIT TRANSACTION.
BEGIN TRANSACTION: BEGIN WORK ou START TRANSACTION;
Alguns SGBD's já encapsulam o BEGIN e END TRANSACTION, não sendo necessário declará-los explicitamente.
Obs: Não encontrei nenhum dos nomes com o underline, como no exemplo: END_TRANSACTION. Mas, vai pela mais certa neh.
Fonte: https://books.google.co.in/books?id=hP7_rcL-NBwC&printsec=frontcover&hl=pt-BR&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo