SóProvas


ID
2354797
Banca
UFMT
Órgão
UFSBA
Ano
2017
Provas
Disciplina
Banco de Dados
Assuntos

Sobre transações em SQL, considere:

I - São uma sequência de operações num sistema gerenciador de banco de dados, que são tratadas como um bloco único e indivisível (atômico).

II - Os comandos COMMIT, ROLLBACK e END TRANSACTION fazem parte do controle de transações do SQL.

III - O comando COMMIT garante de forma permanente as mudanças ocorridas nos dados durante a transação. O comando ROLLBACK desfaz as mudanças ocorridas nos dados durante a transação. Independente do comando executado (COMMIT ou ROLLBACK), faz-se necessário encerrar a transação por meio do comando END TRANSACTION.


Está correto o que se afirma em

Alternativas
Comentários
  • O que é transação?
    É uma unidade lógica de processamento que tem por objetivo preservar a integridade e a consistência dos dados. Esse processamento pode ser executado todo ou não garantindo a atomicidade das informações.
    A sintaxe básica de uma transação é:
    Begin Transaction
    --Corpo de comando
    Commit ou Rollback

    Onde:
    Begin Transaction: Tag inicial para o inicio de uma transação

    --Corpo de comando: Conjunto de comando a serem executados dentro de uma transação.
    Commit ou Rollback: Comandos que finalizam a transação onde o ‘commit’ confirma o conjunto de comandos e o ‘rollback’ desfaz todo o processo executado pelo corpo de comandos caso tenha ocorrindo algum evento contrario ao desejado.

    http://www.devmedia.com.br/transacoes-sql-server/15331

    Finalizando transações

    Você pode finalizar transações com uma instrução COMMIT ou ROLLBACK ou por uma função de API.

    https://technet.microsoft.com/pt-br/library/ms175523(v=sql.105).aspx

     

    A opção III não está correta, pois END TRANSACTION não é obrigatório.

  • Alguém sabe dizer o erro da ll.

  • @Carlos Alberto,

    A II está errada porque controle da transação são BEGIN, COMMIT e ROLLBACK.

    E a III está errada porque usamos COMMIT para finalizar uma transação, não END TRANSACTION.