ホームページ > バックエンド開発 > PHPチュートリアル > 在save()执行之后rollback为什么没有回滚?

在save()执行之后rollback为什么没有回滚?

WBOY
リリース: 2016-06-06 20:22:55
オリジナル
1684 人が閲覧しました

<code>DB::beginTransaction();
$model = new UserWechat();
$model->unionid = 'od13WwfNk64BQ9ME95S-bzuU7j8A';
$model->save();
DB::rollback();</code>
ログイン後にコピー
ログイン後にコピー

代码如上,没有按照预期回滚,数据插入了数据库中.
执行原生sql如下, 和预期一致!:

<code>start transaction;
insert into user_wechat (unionid) values('od13WwfNk64BQ9ME95S-bzuU7j8A');
rollback;</code>
ログイン後にコピー
ログイン後にコピー

难道我错了一万年...

回复内容:

<code>DB::beginTransaction();
$model = new UserWechat();
$model->unionid = 'od13WwfNk64BQ9ME95S-bzuU7j8A';
$model->save();
DB::rollback();</code>
ログイン後にコピー
ログイン後にコピー

代码如上,没有按照预期回滚,数据插入了数据库中.
执行原生sql如下, 和预期一致!:

<code>start transaction;
insert into user_wechat (unionid) values('od13WwfNk64BQ9ME95S-bzuU7j8A');
rollback;</code>
ログイン後にコピー
ログイン後にコピー

难道我错了一万年...

你的数据库引擎是InnoDB么?只有InnoDB才支持事务,MyISAM是不支持的哦!

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート