Bloqueios de linha fornecem proteção contra manipulações de mesa contenciosas . Por exemplo, você pode não querer que os usuários inserir novos registros em uma tabela , enquanto você está recuperando linhas da tabela. Bloqueios de linha instruir o banco de dados para adiar a inserção de novas linhas , enquanto os registros da tabela são recuperadas. Após o processo de recuperação, o banco de dados insere os registros. MySQL, um banco de dados open-source, tem a opção de aplicar bloqueios de tabela dentro de seus procedimentos armazenados. Instruções
1
Bloquear suas linhas da tabela. Você pode bloquear para " escrever " ou " ler ". Neste exemplo, um bloqueio é criado em cima da mesa , para que os usuários não são capazes de escrever para a mesa. Bloqueios de escrita incluem edição e inserção na tabela. O código a seguir mostra como bloquear registros na tabela:
bloquear tabelas de escrita do cliente, gravação tempTable ;
O código acima bloqueia as linhas na tabela de clientes . Quaisquer dúvidas sobre a mesa são salvos na tabela " tempTable " .
2
Realizar suas declarações de leitura sobre a mesa. Uma vez que a tabela é bloqueada em declarações gravação , você ainda pode recuperar as informações da tabela . O código a seguir é uma instrução SELECT simples que você pode usar em cima da mesa , enquanto ele está bloqueado :
SELECT * FROM cliente
3
Insira todos os registros guardados na tabela temporária . Depois que suas funções de tabela terminar, os valores mantidos na tabela de temperatura são transportados para a tabela de clientes . O código a seguir mostra como mover informações da tabela temp:
inserir cliente select * from tempTable ;
4
Excluir registros da tabela temporária e liberar os bloqueios. Depois que os bloqueios sejam liberados , as funções de mesa normalmente e permite que todos ler e escrever transações. O código a seguir exclui os valores da tabela temporários e abre a tabela de clientes :
excluir tempTable ; desbloquear tabelas ;