PDO (PHP Data Objects) – Parte 8

PDO::beginTransaction — Inicia uma transação

Desliga o modo autocommit. Enquanto o modo autocommit é desligado, as alterações feitas no banco de dados através da instância do objeto PDO não estão comprometidas até que você termine a transação chamando PDO::commit(). Chamando PDO::rollback() irá reverter todas as alterações ao banco de dados e retornar a ligação para o modo autocommit.

Alguns bancos de dados, incluindo MySQL, emitem automaticamente um COMMIT implícito quando ocorre uma linguagem de definição de banco de dados (DDL), tais como declaração DROP TABLE ou CREATE é emitido dentro de uma transação. O COMMIT implícito o impedirá de reverter as alterações no âmbito do limite de transação. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo:

<?php

/* Inicia uma transação, desliga o autocommit */

$dbh->beginTransaction();

/* Executa alguma coisa */

/* Reverter as mudanças */
$ dbh-> rollBack ();

/* Conexão de banco de dados agora está de volta em modo autocommit */
?>

PDO::commit – Grava uma transação

Grava uma transação, voltando a conexão do banco para o modo autocommit até a próxima chamada PDO::beginTransaction() que inicia uma nova transação. Retorna TRUE em caso de sucesso ou FALSE em falhas.

Exemplo:

<?php
/* Inicia uma transação, desliga o autocommit */
$dbh->beginTransaction();

/* Executa alguma coisa */

/* Salva as mudanças */
$dbh->commit();

/* Conexão de banco de dados agora está de volta em modo autocommit */
?>
Fica ai a dica…





0 Comments

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="">

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.