COMMIT

Confirma uma transação aberta na sessão atual.

Consulte também:

BEGIN , ROLLBACK , SHOW TRANSACTIONS , DESCRIBE TRANSACTION

Sintaxe

COMMIT [ WORK ]
Copy

Parâmetros

WORK

Palavra-chave opcional que proporciona compatibilidade com outros sistemas de banco de dados.

Notas de uso

  • Se duas instruções COMMIT em uma linha forem executadas (dentro do mesmo escopo), a segunda será ignorada. Por exemplo, no código a seguir, o segundo COMMIT não tem efeito; não há nenhuma transação em aberto para confirmar.

    begin;
    insert into table1 ...;
    commit;
    commit;  -- Ignored!
    
    Copy

    As regras podem ser mais complexas se você estiver usando transações autônomas com escopo e procedimentos armazenados.

Exemplos

Iniciar uma transação, inserir alguns valores em uma tabela e, em seguida, concluir a transação, confirmando-a:

SELECT COUNT(*) FROM A1;

----------+
 COUNT(*) |
----------+
 0        |
----------+

BEGIN NAME T3;

SELECT CURRENT_TRANSACTION();

-----------------------+
 CURRENT_TRANSACTION() |
-----------------------+
 1432071497832         |
-----------------------+

INSERT INTO A1 VALUES (1), (2);

-------------------------+
 number of rows inserted |
-------------------------+
 2                       |
-------------------------+

COMMIT;

SELECT CURRENT_TRANSACTION();

-----------------------+
 CURRENT_TRANSACTION() |
-----------------------+
 [NULL]                |
-----------------------+

SELECT LAST_TRANSACTION();

--------------------+
 LAST_TRANSACTION() |
--------------------+
 1432071497832      |
--------------------+

SELECT COUNT(*) FROM A1;

----------+
 COUNT(*) |
----------+
 2        |
----------+
Copy