(PHP 5, PHP 7)
mysqli::autocommit -- mysqli_autocommit — Aktiviert oder deaktiviert automatisches Bestätigen von Datenbankänderungen
Objektorientierter Stil
$mode
)Prozeduraler Stil
Aktiviert oder deaktiviert den Autocommit-Modus für Abfragen an die Datenbankverbindung.
Um den aktuellen Zustand von Autocommit festzustellen, ist die SQL-Anweisung SELECT @@autocommit zu verwenden.
link
Nur bei prozeduralem Aufruf: Ein von mysqli_connect() oder mysqli_init() zurückgegebenes Verbindungsobjekt.
mode
Ob Autocommit aktiviert werden soll oder nicht.
Gibt bei Erfolg TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben.
Hinweis:
Die Funktion kann nicht mit Tabellentypen, die keine Transaktionen unterstützen (wie MyISAM oder ISAM), verwendet werden.
Beispiel #1 mysqli::autocommit() Beispiel
Objektorientierter Stil
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
if (mysqli_connect_errno()) {
printf("Verbindung fehlgeschlagen: %s\n", mysqli_connect_error());
exit();
}
/* Schaltet autocommit ein */
$mysqli->autocommit(TRUE);
if ($result = $mysqli->query("SELECT @@autocommit")) {
$row = $result->fetch_row();
printf("Autocommit ist %s\n", $row[0]);
$result->free();
}
/* Schließt die Verbindung */
$mysqli->close();
?>
Prozeduraler Stil
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
if (!$link) {
printf("Kann nicht mit localhost verbinden. Fehler: %s\n", mysqli_connect_error());
exit();
}
/* Schaltet autocommit ein */
mysqli_autocommit($link, TRUE);
if ($result = mysqli_query($link, "SELECT @@autocommit")) {
$row = mysqli_fetch_row($result);
printf("Autocommit ist %s\n", $row[0]);
mysqli_free_result($result);
}
/* Schlisst die Verbindung */
mysqli_close($link);
?>
Die obigen Bespiele erzeugen folgende Ausgabe:
Autocommit ist 1