Os gerenciadores de bancos de dados permitem que transações mais complexas sejam controladas explicitamente, de modo a garantir a atomicidade e a integridade das operações. Nesse contexto, o ciclo iniciado por um comando begin transaction tem, como complemento, o(s) comando(s):
- A)catch;
Errada, porque catch nao e comando de controle de transacao em SGBD, mas sim um termo associado a tratamento de excecoes em linguagens de programacao.
- B)commit, rollback;
Certa, pois commit confirma as alteracoes da transacao e rollback desfaz as operacoes realizadas desde o begin transaction.
- C)load, unload;
Errada, porque load e unload sao comandos ligados a carga e descarga de dados, nao ao encerramento de transacoes.
- D)lock, unlock;
Errada, porque lock e unlock tratam de bloqueio e desbloqueio de recursos, mas nao substituem os comandos de finalizacao da transacao.
- E)log.
Errada, porque log se relaciona ao registro das operacoes para auditoria e recuperacao, e nao ao fechamento da transacao.
Gabarito: B
Quando voce inicia uma transacao com begin transaction, voce abre um bloco de operacoes que deve ser tratado como uma unidade. A ideia central aqui e a atomicidade: ou tudo acontece, ou nada acontece. Isso evita que o banco fique com dados pela metade, o famoso “meio termo” que SGBD nenhum gosta. No fim desse ciclo, os comandos que encerram a transacao sao commit e rollback. O commit confirma definitivamente as alteracoes no banco, enquanto o rollback desfaz tudo o que foi feito desde o inicio da transacao. Em termos de controle de transacoes, esse par e o complemento natural do begin transaction. A doutrina de Banco de Dados costuma resumir isso como o ciclo basico de uma transacao: begin, executar operacoes, e depois commit ou rollback. Esse mecanismo tambem conversa com as propriedades ACID, especialmente atomicidade e consistencia, que sao essenciais para garantir integridade. Por isso, o gabarito correto e a letra B. As outras alternativas trazem comandos de outras naturezas, mas nao encerram uma transacao. Em prova, quando aparecer begin transaction, pense automaticamente em confirmar ou desfazer. O banco agradece e a banca tambem.