COMMIT e ROLLBACK interagem com áreas de

Propaganda
MySQL
SQL (Structured Query Language) como sabem é a Linguagem de Consulta Estruturada, que é utilizada em bancos de dados
relacionais, como MySQL, SQL Server, Postgre SQL, Firebird, Oracle e entre muitos outros bancos de dados existentes no
mercado.
O SQL é muito parecido em utilização em todos os bancos de dados, porém não é igual em todos, cada fabricante ou
mantenedor do banco de dados implementa o seu próprio SQL conforme desejar, geralmente o SQL ANSI é aceito por todos
os bancos, ou seja, todos os bancos de dados partem do SQL ANSI para começar implementar suas melhorias.
SQL em SI não é o SQL utilizado para codificação dentro do banco de dados, nestes casos, a intervenção do fabricante é forte
e são implementadas as próprias funcionalidades e criada a sua própria linguagem, claro que como tudo vem do SQL ANSI,
tudo é mais ou menos parecido, porém, por exemplo, na declaração de variáveis, implementação de laços, nestas capacidades
é que são bastante diferenciadas, até porque, é o momento onde começa a se tornar uma linguagem de programação e não
mais somente de consulta de dados, como a Microsoft, por exemplo, tem o T-SQL (Transact-SQL), a Oracle possui o PL/SQL
(Procedural Language/Structured Query Language ).
O SQL em si é dividido em subgrupos que basicamente seriam: DDL, DML, DQL, DCL e DTL
DTL – Data Transaction Language (Linguagem de Transação de Dados)
Implementa a funcionalidade de transações, essas que permitem aprovar todas as modificações ou voltar ao estado que
estava antes das modificações de uma vez só, isso garante a integridade do banco de dados quanto a falhas (Não tem nada
com integridade relacional por aqui), pois quando dentro de uma operação grande ou mesmo de apenas dois comandos, se
houver alguma falha você pode anular toda a operação e voltar ao estado anterior com o ROLLBACK, ou então se ocorrer tudo
bem, você pode confirmar a operação com o COMMIT, os comando que implementam este grupo são basicamente os
seguintes:






BEGIN WORK (ou START TRANSACTION, dependendo do dialeto SQL) pode ser usado para marcar o
começo de uma transação de banco de dados que pode ser completada ou não.
COMMIT envia todos os dados das mudanças permanentemente.
ROLLBACK faz com que as mudanças nos dados existentes desde o último COMMIT ou ROLLBACK sejam
descartadas.
START TRANSACTION – Inicia uma transação;
COMMIT – Confirma a operação inteira;
ROLLBACK – Anula a operação inteira e volta ao estado anterior.
COMMIT e ROLLBACK interagem com áreas de controle como transação e locação. Ambos terminam qualquer
transação aberta e liberam qualquer cadeado ligado a dados. Na ausência de um BEGIN WORK ou uma declaração
semelhante, a semântica de SQL é dependente da implementação.
Sistemas de Banco de Dados que usam SQL:














Apache Derby
Caché
DB2
Firebird
HSQLDB (banco de dados implementado em Java)
IDMS (banco de dados hierárquico)
IMS (banco de dados hierárquico)
Informix
Ingres
InterBase
Microsoft Access
Microsoft SQL Server
MySQL
Oracle






PointBase Micro (banco de dados relacional implementado em Java)
PostgreSQL
SQLite
LiteBase Mobile (dedicado à plataformas móveis como: Palm OS, Pocket PC, WinCE, Symbian)
Sybase Adaptive Server Enterprise
Teradata (primeiro RDBMS com arquitetura paralela do mercado).
Download