Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wyłącza tryb automatycznego zatwierdzania i rozpoczyna transakcję.
Syntax
bool PDO::beginTransaction();
Wartość zwracana
prawdziwe, jeśli wywołanie metody się powiodło, fałszywe w przeciwnym przypadku.
Remarks
Transakcja rozpoczęta za pomocą PDO::beginTransaction kończy się, gdy wywołane zostanie PDO::commit lub PDO::rollback .
PDO::beginTransaction nie jest objęty (i nie wpływa) na wartość PDO::ATTR_AUTOCOMMIT.
Nie wolno wywoływać PDO::beginTransaction przed zakończeniem poprzedniego PDO::beginTransaction za pomocą PDO::rollback lub PDO::commit.
Połączenie wraca do trybu automatycznego zatwierdzania, jeśli ta metoda się nie powiedzie.
Wsparcie dla PDO zostało dodane w wersji 2.0 sterowników Microsoft dla PHP dla SQL Server.
Example
Poniższy przykład wykorzystuje bazę danych o nazwie Test oraz tabelę o nazwie Table1. Rozpoczyna transakcję, a następnie wydaje polecenia, aby dodać dwa wiersze, a następnie usunąć jeden wiersz. Polecenia są wysyłane do bazy danych, a transakcja kończy się wyraźnie słowem PDO::commit.
<?php
$conn = new PDO( "sqlsrv:server=(local); Database = Test", "", "");
$conn->beginTransaction();
$ret = $conn->exec("insert into Table1(col1, col2) values('a', 'b') ");
$ret = $conn->exec("insert into Table1(col1, col2) values('a', 'c') ");
$ret = $conn->exec("delete from Table1 where col1 = 'a' and col2 = 'b'");
$conn->commit();
// $conn->rollback();
echo $ret;
?>