fix docs, add missing "}", fix formatting
[mdref/mdref-pq] / pq / Connection / startTransactionAsync.md
1 # pq\Transaction pq\Connection::startTransactionAsync([int $isolation = pq\Transaction::READ_COMMITTED[, bool $readonly = FALSE[, bool $deferrable = FALSE]]])
2
3 [Asynchronously](pq/Connection/: Asynchronous Usage) begin a transaction.
4
5 ## Params:
6
7 * Optional int $isolation = pq\Transaction::READ_COMMITTED
8 Any pq\Transaction isolation level constant
9 (defaults to pq\Connection::$defaultTransactionIsolation).
10 * Optional bool $readonly = FALSE
11 Whether the transaction executes only reads
12 (defaults to pq\Connection::$defaultTransactionReadonly).
13 * Optional bool $deferrable = FALSE
14 Whether the transaction is deferrable
15 (defaults to pq\Connection::$defaultTransactionDeferrable).
16
17 > ***NOTE:***
18 A transaction can only be deferrable if it also is readonly and serializable.
19 See the official [PostgreSQL documentaion](http://www.postgresql.org/docs/current/static/sql-set-transaction.html) for further information.
20
21 ## Returns:
22
23 * pq\Transaction, an asynchronously begun transaction instance.
24
25 ## Throws:
26
27 * pq\Exception\InvalidArgumentException
28 * pq\Exception\BadMethodCallException
29 * pq\Exception\RuntimeException