mysqli::$affected_rows
mysqli::begin_transaction
mysqli
PHP Manual

# mysqli::autocommit

# mysqli_autocommit

Turns on or off auto-committing database modifications

### Description

Object oriented style

bool mysqli::autocommit ( bool `$mode` )

Procedural style

bool mysqli_autocommit ( mysqli `$link` , bool `$mode` )

Turns on or off auto-commit mode on queries for the database connection.

To determine the current state of autocommit use the SQL command SELECT @@autocommit.

### Parameters

`link`

  Procedural style only: A link identifier returned by mysqli_connect or mysqli_init

`mode`

  Whether to turn on auto-commit or not.

### Return Values

Returns `TRUE` on success or `FALSE` on failure.

### Notes

> Note:

> This function doesn't work with non transactional table types (like MyISAM or ISAM).

### Examples

Example #1 mysqli::autocommit example

Object oriented style

`<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* turn autocommit on */
$mysqli->autocommit(TRUE);
if ($result = $mysqli->query("SELECT @@autocommit")) {
$row = $result->fetch_row();
printf("Autocommit is %s\n", $row[0]);
$result->free();
}
/* close connection */
$mysqli->close();
?>`

Procedural style

`<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
if (!$link) {
printf("Can't connect to localhost. Error: %s\n", mysqli_connect_error());
exit();
}
/* turn autocommit on */
mysqli_autocommit($link, TRUE);
if ($result = mysqli_query($link, "SELECT @@autocommit")) {
$row = mysqli_fetch_row($result);
printf("Autocommit is %s\n", $row[0]);
mysqli_free_result($result);
}
/* close connection */
mysqli_close($link);
?>`

The above examples will output:

    Autocommit is 1

### See Also

- mysqli_begin_transaction
- mysqli_commit
- mysqli_rollback