Heim  >  Artikel  >  php教程  >  PHP mysql事务回滚操作实例

PHP mysql事务回滚操作实例

WBOY
WBOYOriginal
2016-06-13 10:09:271275Durchsuche

本文章来给大家介绍一个PHP mysql事务回滚操作实例,有需要了解事物回滚的朋友可参考。操作方法很简单。

MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其他的类型是不支持的!

 代码如下 复制代码
public function insertUser ($userArray){
  foreach ($userArray as $key => $value) {
   @$field  .= "$key,";
   @$content .= "'$value',";
  } 
  $field  = ereg_replace(',$', '', $field);
  $content = ereg_replace(',$', '', $content);
 
  $db = db_connect();  //连接数据库
 
  $db->autocommit(FALSE); //设置为非自动提交——事务处理
 
  $sql1  = "INSERT INTO t_user (".$field.") VALUES (".$content.")";
  $result1 = $db->query($sql1);
 
  $sql2  = "INSERT INTO t_userpost (f_username) VALUES ('".$userArray['f_username']."')";
  $result2 = $db->query($sql2);
 
  if ($result1 && $result2) {
   $db->commit();  //全部成功,提交执行结果
   echo '提交';
  } else {
   $db->rollback(); //有任何错误发生,回滚并取消执行结果
   echo '回滚';
  }
  $db->close();
}
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