COMMIT e ROLLBACK no SQL
Sql é um assunto do qual gosto bastante, então sempre que posso dou uma pincelada no tema. Pois bem, no sql tem duas cláusulas muito interessantes COMMIT e ROLLBACK.
COMMIT - Responsável por efetivar a transação corrente, pois quando se trabalha com um banco de dados em que vários usuários vão utilizá-lo ao mesmo tempo, tem que se efetivar a operação, pois sem o COMMIT a alteração não será visualizada para as outras "sessões", salvo se a sessão em que fez a alteração for fechada, o que por sua vez, traria muitos prejuízos, pois outros usuários iriam trabalhar com um banco de dados desatualizado e podendo até causar redundância de dados.
ROLLBACK - Desfaz a última alteração.
Quando desenvolvemos um sistema, tentamos fazer todos os tratamentos de erros possíveis, mas não podemos esquecer da astúcia do usuário, ele sempre consegue arranjar um jeito de fazer m... no sistema e descobri um bug que você nem imaginava ser possível, por isso existe os tratamentos de erros e se tratando de um banco de dados essa preocupação tem que triplicar. Como mencionei anteriormente essas duas cláusulas são muito interessantes, ainda mais utilizando Stored Procedure, Quando se faz uma operação no BD (INSERT, UPDATE, DELETE), este por sua vez retorna se a operação foi ou não bem sucedida. A partir daqui podemos imaginar como podem nos ser úteis as cláusulas. Exemplo:
No código acima verificamos, se a inserção foi bem-sucedida, se for efetiva a inserção no bd, senão desfaz a inserção.
Agora vem aquele apelo básico, para você comentar.
Fuiii...
COMMIT - Responsável por efetivar a transação corrente, pois quando se trabalha com um banco de dados em que vários usuários vão utilizá-lo ao mesmo tempo, tem que se efetivar a operação, pois sem o COMMIT a alteração não será visualizada para as outras "sessões", salvo se a sessão em que fez a alteração for fechada, o que por sua vez, traria muitos prejuízos, pois outros usuários iriam trabalhar com um banco de dados desatualizado e podendo até causar redundância de dados.
ROLLBACK - Desfaz a última alteração.
Quando desenvolvemos um sistema, tentamos fazer todos os tratamentos de erros possíveis, mas não podemos esquecer da astúcia do usuário, ele sempre consegue arranjar um jeito de fazer m... no sistema e descobri um bug que você nem imaginava ser possível, por isso existe os tratamentos de erros e se tratando de um banco de dados essa preocupação tem que triplicar. Como mencionei anteriormente essas duas cláusulas são muito interessantes, ainda mais utilizando Stored Procedure, Quando se faz uma operação no BD (INSERT, UPDATE, DELETE), este por sua vez retorna se a operação foi ou não bem sucedida. A partir daqui podemos imaginar como podem nos ser úteis as cláusulas. Exemplo:
SQL>insert into alunos (matricula, nome) values (4, 'Yusuke Urameshi');
1 row created.
SQL>IF @@ERROR <> 0 ROLLBACK ELSE COMMIT
Commit complete.
No código acima verificamos, se a inserção foi bem-sucedida, se for efetiva a inserção no bd, senão desfaz a inserção.
Agora vem aquele apelo básico, para você comentar.
Fuiii...
Marcadores: SQL
11 Comentários:
Explicação bem simples e direta. Parabéns!
Muito Obrigado pelo apoio.
[]'s
Muito bom, me ajudou muito no meu trabalho sobre SQL
Parabéns, falou simples e esclareceu tudo!
Muto boa sua explicação, está me ajudando muito, pois sou novato e preciso aprender mais ainda sobre SQL.
Valeu galera, pelos comentários, é sempre bom ajudar!
Explicação simples, direta bastante clara!
gostei muito dessa explicação,pois, estou começando a entender e aprender sobre "Sql"...ADOREI MESMO!
Muito boa a explicação...obrigado
Foi de grande ajuda! =D
Dá uma olhada:
http://unicodebrasil.wordpress.com/2012/04/12/usando-commit-e-rollback/
Postar um comentário
Assinar Postar comentários [Atom]
<< Página inicial