Todos os anos empresas investem milhões de dólares em segurança de seus servidores e sigilo de informações, mas nem sempre o investimento é a solução, pois existem regras, que se forem seguidas corretamente, jamais ocorrerá perda de dados.
Existe uma variedade enorme de banco de dados como: Oracle, mariaDB, MySQL, Firebird, entre outros. Todos utilizam o SQL (StructuredQueryLanguage – Linguagem de Consulta Estruturada), a diferença é a sintaxe do PL/SQL, que é utilizado para criar Trigger, Function, View e outras operações.
Existe um conceito chamado ACID, que é um acrônimo (palavra formada por inicias de outras silabas) de Atomicidade, Consistência, Integridade e Durabilidade, são estes quatro conceitos que você deve conhecer, ainda mais se for fazer algum concurso.
Atomicidade – Garante que uma transação seja feita por completo ou em caso de problemas volte ao seu valor original, em poucas palavras, tudo ou nada.
Exemplo: Imagine que durante o saque de uma quantia em um caixa eletrônico, a energia acabasse sem finalizar o saque, se a regra de atomicidade estiver implantada o saldo do cliente, voltará ao valor antes do saque assim que a máquina for ligada, mas se não tiver implantado, o cliente não receberá as cédulas e constará o saque em sua conta.
Consistência: Garante que uma transação passe de um estado consistente para outro.
Exemplo: Durante a transação de um valor em um caixa eletrônico, o banco deve garantir que nenhuma informação seja cadastrada com dados corrompidos, ou seja, o próprio banco de dados garante que os dados serão inseridos ou alterados de forma segura e completa, caso contrário, aborta a operação.
Isolamento: Garante que nenhuma outra transação interfira na transação corrente, ou seja, uma transação deve ser completada para iniciar outra.
Exemplo: Imagine uma grande rede de vendas online, se um cliente estiver comprando um produto, nenhum administrador poderá alterar aquele valor, enquanto a transação do cliente não for finalizada, para ser mais simples, este conceito bloqueia a tabela, linha ou coluna até que a transação seja finalizada.
Durabilidade: Garante que transações futuras não alterem o valor de informações já cadastradas, mesmo se houver grandes falhas.
Exemplo: Após realizar o saque em caixa, o cliente deseja pagar um boleto, mas no meio da transação o caixa venha apresentar falhas, as informações do saque permanecerão estáveis, sem nenhuma interferência da ocorrência seguinte.
Basicamente é isto, espero que tenham aprendido, se houver dúvidas, deixem nos comentários.