Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Antes de testarmos transações no MySQL,
- # vamos desativar o commit automático:
- SET @@autocommit = OFF;
- # Conferimos o valor do autocommit atual:
- SELECT @@autocommit;
- # Vamos criar uma base de dados de teste
- CREATE DATABASE teste_transacao;
- USE teste_transacao;
- # Agora, vamos criar um tabela de testes para
- # realizarmos transações envolvendo commits e rollbacks:
- # Criar tabela para testes
- CREATE TABLE dadosLivro
- (
- isbn VARCHAR(13) NOT NULL PRIMARY KEY,
- nome VARCHAR(80) NOT NULL,
- preco DECIMAL(10, 2) NOT NULL
- );
- START TRANSACTION; # inicia a transação
- # Insere registro no banco
- INSERT INTO
- dadosLivro (isbn, nome, preco)
- VALUES
- ("9876532145632", "Ciência de Dados com Python", 69.88);
- # Retorna tabela com o dado acima inserido
- SELECT * FROM dadosLivro;
- ROLLBACK; # desfaz a transação
- # Como a transação anterior foi desfeita, retorna a tabela vazia
- SELECT * FROM dadosLivro;
- START TRANSACTION; # inicia a transação
- # Insere registro no banco
- INSERT INTO
- dadosLivro (isbn, nome, preco)
- VALUES
- ("9876532145632", "Ciência de Dados com Python", 69.88);
- # Retorna tabela com o dado acima inserido
- SELECT * FROM dadosLivro;
- COMMIT; # confirma a transação
- # Como a transação foi confirmada, o dado inserido foi persistido no banco
- SELECT * FROM Dados_Livro;
Add Comment
Please, Sign In to add comment