typo
[mdref/mdref-pq] / pq / Transaction / savepoint.md
1 # void pq\Transaction::savepoint()
2
3 Create a `SAVEPOINT` within this transaction.
4
5 > ***NOTE:***
6 pq\Transaction tracks an internal counter as savepoint identifier.
7
8 ## Params:
9
10 None.
11
12 ## Throws:
13
14 * pq\Exception\InvalidArgumentException
15 * pq\Exception\BadMethodCallException
16 * pq\Exception\RuntimeException
17
18
19 ## Example:
20
21 <?php
22
23 $connection = new pq\Connection;
24 $transaction = $connection->startTransaction();
25
26 // create a savepoint
27 $transaction->savepoint();
28 // create another savepoint
29 $transaction->savepoint();
30
31 // rollback to previous savepoint
32 $transaction->rollback();
33 // release first savepoint
34 $transaction->commit();
35 // commit transaction
36 $transaction->commit();
37
38 ?>