Ich habe den Transaktionsmechanismus eingerichtet und die zweite SQL-Anweisung absichtlich falsch eingestellt. Warum sollte die erste SQL-Anweisung am Ende nicht zurückgesetzt und überhaupt nicht ausgeführt werden?
陈老师
陈老师 2018-05-19 12:55:01
0
1
1200


<?php

$pdo=new PDO('mysql:host=localhost;dbname=student','root','root');

try{

$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$pdo->beginTransaction();

//Die erste SQL-Anweisung

$sqla="delete from chen where id=14";

$ pdo->exec($sqla);

//Die SQL-Anweisung am zweiten Tag

$sqlb="delete froms chen where id=15" //Mit Absicht von falsch schreiben

$pdo- > ;exec($sqlb);


}catch(Exception $e){

$pdo->rollBack();

$e->getMessage();

echo "Operation fehlgeschlagen ";

}

?>


陈老师
陈老师

Antworte allen(1)
NULL

数据库引擎是不是MyISAM,改成InnoDB试试

  • Antwort 嗯 是的 发现问题了 非常感谢您 厉害
    陈老师 Autor 2018-05-21 10:55:46
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage