Heim >Backend-Entwicklung >PHP-Problem >Wie man PDO::beginTransaction in PHP richtig verwendet

Wie man PDO::beginTransaction in PHP richtig verwendet

autoload
autoloadOriginal
2021-04-26 09:52:131728Durchsuche

Transaktionen sind eine häufige Operation in SQL. Beim Hinzufügen, Löschen und Ändern der Datenbank treten zwangsläufig Probleme auf, um diese Art von größeren Fehlern zu vermeiden , PHP stellt die Funktion beginTransaction bereit. Dieser Artikel führt Sie dazu, einen Blick darauf zu werfen. SQL中较为常见的使用操作,在日常操作中,我们经常需要对数据库进行增、删、改,对数据进行操作难免会出现问题,为避免这种较大的错误,PHP提供beginTransaction函数,本文就带大家一起来看一看。

首先,我们来看一看beginTransaction()函数的语法:

beginTransaction (   )
  • 关闭自动提交模式。自动提交模式被关闭的同时,通过 PDO 对象实例对数据库做出的更改直到调用 PDO::commit() 结束事务才被提交。调用 PDO::rollBack() 将回滚对数据库做出的更改并将数据库连接返回到自动提交模式。 

  • 返回值:成功时返回 true, 或者在失败时返回 false

    Werfen wir zunächst einen Blick auf die Syntax der Funktion beginTransaction():
<?php
$servername = "localhost";
$username = "root";
$password = "root123456";
$dbname   = "my_database";
 
try {
    $pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    echo "连接成功"."<br>"; 
    $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);
    }
catch(PDOException $e)
{
    $pdo->rollBack();
    echo $e->getMessage();
}
?>
  • Schalten Sie die aus Auto-Commit-Modus. Wenn der Auto-Commit-Modus deaktiviert ist, werden Änderungen, die über die Objektinstanz PDO an der Datenbank vorgenommen werden, erst festgeschrieben, wenn PDO::commit() zum Beenden aufgerufen wird Transaktion. Durch den Aufruf von PDO::rollBack() werden an der Datenbank vorgenommene Änderungen rückgängig gemacht und die Datenbankverbindung wird in den Autocommit-Modus zurückversetzt.


  • Rückgabewert: true wird bei Erfolg zurückgegeben, oder false wird bei Fehler zurückgegeben.

    Codebeispiel: 1. Datenbankverbindungsteil:

        $pdo->beginTransaction();
    /* 在全有或全无的基础上插入多行记录(要么全部插入,要么全部不插入) */
        $sql = "INSERT INTO fate (id, name, age)VALUES (10,&#39;王五&#39;,27)";
        $sth = $pdo->exec($sql);
    
    /* 提交更改 */
    $pdo->commit();
    /* 现在数据库连接返回到自动提交模式 */
    Empfehlung: "Zusammenfassung der PHP-Interviewfragen "

    🎜php Video-Tutorial🎜🎜》🎜🎜

Das obige ist der detaillierte Inhalt vonWie man PDO::beginTransaction in PHP richtig verwendet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn