Maison  >  Article  >  développement back-end  >  Comment utiliser un exemple de code de transaction Mysql en php

Comment utiliser un exemple de code de transaction Mysql en php

怪我咯
怪我咯original
2017-07-23 13:32:582567parcourir

Les transactions MySQL sont principalement utilisées pour traiter des données avec des opérations volumineuses et une grande complexité. Par exemple, dans le système de gestion du personnel, si vous supprimez une personne, vous devez supprimer les informations de base de la personne, ainsi que les informations liées à la personne, telles que la boîte aux lettres, les articles, etc. Les instructions d'opération constituent une transaction ! Cet article présente principalement l'utilisation des transactions Mysql en PHP, qui est une compétence opérationnelle pratique très importante dans la programmation de bases de données PHP. Les amis dans le besoin peuvent se référer à

Les exemples spécifiques sont les suivants :

.

<?php
//数据库连接
$conn = mysql_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;&#39;);
mysql_select_db(&#39;test&#39;, $conn);
mysql_query("SET NAMES GBK");

/*
支持事务的表必须是InnoDB类型
一段事务中只能出现一次:
mysql_query(&#39;START TRANSACTION&#39;);//开始事务
mysql_query(&#39; ROLLBACK &#39;);//回滚事务
mysql_query(&#39;COMMIT&#39;);//提交事务

如果一段事务中出现多次回滚事务,则在,提交事务时只将第一次回滚前至开始事务后对数据库的所有操作取消,第一次回滚后至提交事务前所有对数据库操作仍将有效,所以一般将回滚语句仅放在提交事务语句前
如果一段事务无提交语句,则从开始事务时以下的所有对数据库操作虽执行(执行方法返回对错),但对数据库无影响,但是在执行下段开始事务语句时,前段事务自动提交
*/
mysql_query(&#39;START TRANSACTION&#39;);
$isBad = 0;

$ins_testTable1 = "INSERT INTO testtable1(NAME,age)VALUES(&#39;first&#39;,23)";
if(!mysql_query($ins_testTable1)){
  $isBad =1;
}
//插入语句字段名有错
$ins_testTable2 = "INSERT INTO testtable1(NAME,ages)VALUES(&#39;second&#39;,&#39;24&#39;)";
if(!mysql_query($ins_testTable2)){
  $isBad =1;
}
if($isBad == 1){
  echo $isBad;
  mysql_query(&#39;ROLLBACK &#39;);
}
mysql_query(&#39;COMMIT&#39;);
mysql_close($conn);
?>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn