SóProvas


ID
2616478
Banca
CESPE / CEBRASPE
Órgão
STM
Ano
2018
Provas
Disciplina
Banco de Dados
Assuntos

Julgue o item que se segue, a respeito do processamento de transações e otimização de desempenho do SGBD e de consultas SQL.


No MySQL 5.6, o modo padrão de execução das transações é autocommit, o qual faz que as mudanças realizadas se tornem permanentes após a execução bem-sucedida desse comando; entretanto, esse modo será desabilitado implicitamente, se uma série de instruções for iniciada por meio do comando START TRANSACTION.

Alternativas
Comentários
  • Pode existir cenários que se demande fazer "sub-transações" dentro de uma transação. Sendo níveis de isolamento distintos.

  • START TRANSACTION or BEGIN start a new transaction;

     

    COMMIT commits the current transaction, making its changes permanent.;

     

    ROLLBACK rolls back the current transaction, canceling its changes;

     

    SET autocommit disables or enables the default autocommit mode for the current session.

     

    By default, MySQL runs with autocommit mode enabled

     

     

    fONTE: https://dev.mysql.com/doc/refman/5.6/en/commit.html

     

     

    GO AHE@D!!!

  • Principais Comandos " Os comandos para se iniciar uma transação e que anulam o modo autocommit são: – START TRANSACTION; – BEGIN WORK; – BEGIN (diferente de BEGIN … END); " Caso se inicie uma transação com qualquer das declarações acima e autocommit esteja habilitado, ele é implicitamente desabilitado até que a transação finalize; " Podemos então, iniciar transações de duas maneiras no MySQL, desabilitando explicitamente o autocommit mode ou utilizando das declarações supracitadas para desabilitar automaticamente antes de rodar os comandos;

    https://pt.slideshare.net/Wagnerbianchi/7-my-sql-56-transacoes

  • START TRANSACTION;

    SELECT @A:=SUM(salary) FROM table1 WHERE type=1;

    UPDATE table2 SET summary=@A WHERE type=1;

    COMMIT;