MySQL MariaDB

Transações MySQL

Transações MySQL
Uma transação é uma coleção simultânea de funções para manipular conjuntos de dados e é realizada como se fosse uma única entidade de trabalho. Em outros termos, uma transação nunca pode ser realizada até que cada processo específico seja bem-sucedido dentro da unidade. Todo o processo entrará em colapso se qualquer transação dentro do processo falhar. Várias consultas SQL são agrupadas em uma unidade, e todas elas serão executadas juntas como uma parte de sua transação. Sempre que uma transação incorpora várias atualizações em um banco de dados, e a transação é confirmada, todas as modificações funcionam, ou todas as atualizações são revertidas sempre que a operação é revertida.

Propriedades de transação

Transações, frequentemente conhecidas pelo termo ÁCIDO, tem quatro propriedades gerais principais.

Funcionamento das transações do MySQL:

No MySQL, os dois termos, Commit e Rollback são usados ​​principalmente para transações MySQL. As transações começam apenas com a declaração BEGIN WORK e terminam por uma declaração COMMIT ou uma declaração ROLLBACK. As instruções SQL abrangem a maior parte da transação entre as instruções de início e parada. Essa série de eventos independe da linguagem de programação específica utilizada. Você fará um caminho adequado em qualquer linguagem que estiver usando para construir o aplicativo. As instruções SQL abaixo podem ser implementadas usando o recurso mysql query ().

Exemplo 01: Modo de confirmação automática ativado:

O MySQL opera com a fase Autocommit permitida por padrão. Ele garante que o MySQL salve as alterações no disco para criá-lo perpetuamente, desde que executemos uma consulta que ajusta (altera) uma tabela. Não é necessário voltar atrás. Vamos tentar com AUTOCOMMIT no modo. Abra o shell da linha de comando do MySQL e digite sua senha para começar.

Tome um exemplo de uma tabela 'livro' que foi criada em um banco de dados 'dados'. No momento, não realizamos nenhuma consulta sobre ele ainda.

>> SELECIONE * DOS dados.livro;

Passo 2: Este processo é para atualizar a tabela 'livro'. Vamos atualizar o valor da coluna 'Autor' onde o 'Nome' de um livro é 'Casa'. Você pode ver que as mudanças foram feitas com sucesso.

>> ATUALIZAR dados.livro SET Autor = 'Cristian Steward' ONDE Nome = 'Casa';

Ao dar uma olhada na tabela atualizada, temos um valor modificado do autor onde 'nome' é 'Casa'.

>> SELECIONE * DOS dados.livro;

Vamos usar o comando ROLLBACK para reverter as alterações simplesmente adicionando a consulta abaixo. Você pode ver que a consulta ROLLBACK não funciona aqui, pois mostra que '0 linhas afetadas'.

>> ROLLBACK;

Você pode até ver a tabela também. A tabela não teve alterações após a execução da instrução ROLLBACK até agora. Isso significa que o ROLLBACK não funciona quando temos AUTOCOMMIT ativado por padrão.

>> SELECIONE * DOS dados.livro;

Exemplo 02: Modo de confirmação automática desativado:

Para reverter as alterações feitas, vamos tentar com o modo AUTOCOMMIT desligado. Usando o mesmo exemplo de tabela 'livro', faremos algumas alterações nela. Estaremos usando a declaração START TRANSACTION para desativar sua fase de auto-commit ou simplesmente digitar o comando abaixo para desligar AUTOCOMMIT.

>> SET AUTOCOMMIT = 0;

Digamos que temos a mesma tabela 'livro' em nosso banco de dados, e temos que fazer alterações nela. Em seguida, reverta essas alterações para as antigas novamente.

>> SELECIONE * DOS dados.livro;

Se você não desligou o modo AUTOCOMMIT, então comece com uma consulta START TRANSACTION no shell da linha de comando como abaixo.

>> INICIAR A TRANSAÇÃO;

Estaremos atualizando a mesma tabela usando o comando UPDATE, definindo o 'Autor' como 'Aliana' onde o 'Nome' de um livro é 'Sonho'. Faça isso usando o comando abaixo. Você verá que as mudanças serão feitas com sucesso e eficácia.

>> ATUALIZAR dados.livro SET Autho = 'Aliana' ONDE Nome = 'Sonho';

Vamos verificar se a consulta acima funcionou perfeitamente e fez alterações na tabela ou não. Você pode verificar a tabela atualizada usando o comando SELECT abaixo como sempre.

>> SELECIONE * DOS dados.livro;

Você pode ver que a consulta funcionou muito bem, conforme mostrado abaixo.

Agora, é a vez do comando ROLLBACK executar sua função. Tente o comando ROLLBACK em sua linha de comando para reverter a atualização recente para a tabela.

>> ROLLBACK;

Vamos verificar se a consulta ROLLBACK foi trabalhada como deveria ou não. Para isso, você deve verificar a tabela 'livro' novamente usando o comando 'SELECT' como sempre.

>> SELECIONE * DOS dados.livro;

Você pode ver na saída abaixo que ROLLBACK finalmente funcionou. Ele reverteu as alterações feitas pela consulta UPDATE nesta tabela.

Conclusão:

Isso é tudo para transações MySQL. Espero que este guia ajude você a realizar transações MySQL convenientemente.

Como usar o AutoKey para automatizar jogos Linux
AutoKey é um utilitário de automação de desktop para Linux e X11, programado em Python 3, GTK e Qt. Usando sua funcionalidade de script e MACRO, você ...
Como mostrar o contador de FPS em jogos Linux
Os jogos Linux tiveram um grande impulso quando a Valve anunciou o suporte Linux para o cliente Steam e seus jogos em 2012. Desde então, muitos jogos ...
Como baixar e jogar Sid Meier's Civilization VI no Linux
Introdução ao jogo Civilization 6 é uma versão moderna do conceito clássico introduzido na série de jogos Age of Empires. A ideia era bastante simples...