ロールバックの効果を見たいのですが、コードを実行するたびに、ロールバックを呼び出してもテーブルが削除されてしまいます。 私はコードPDOロールバックが機能していない
<?php
define('DBNAME','test');
define('DBUSER','root');
define('DBHOST','localhost');
define('PASS','');
$dbh = new PDO('mysql:host='.DBHOST.';dbname='.DBNAME,DBUSER,PASS);
/* Begin a transaction, turning off autocommit */
$dbh->beginTransaction();
$sth = $dbh->prepare("DROP TABLE calendar2");
$result = $sth->execute();
/* Change the database schema and data */
if(!$result)
$dbh->commit();
else
$dbh->rollback();
?>
データベースタイプとしてINNODBを使用していることを確認する必要があります。 MyISAMはトランザクションをサポートしていません。 – Pratik