No conteúdo anterior, vimos as características das transações, os critérios ACID e os comandos SQL que gerenciam uma transação. Vimos também como o log de dados é utilizado para gerenciamento das operações de dados, bem como para a eventual necessidade de desfazer as operações já realizadas.
Agora veremos como o controle de concorrência pode evitar ou gerar problemas transacionais.
Estudaremos a técnica de bloqueio de registro, que impede que múltiplas transações acessem o mesmo item de dado ao mesmo tempo.
Algumas das principais técnicas usadas para controlar a execução concorrente de transações são baseadas no conceito de bloqueio de itens de dados.
Em geral, existe um bloqueio para cada item de dados no banco de dados. Os bloqueios são utilizados como um meio de sincronizar o acesso por transações concorrentes aos itens do banco de dados.
Há basicamente duas técnicas de bloqueio: