热搜:NVER node 开发 php

这三个东西如何搭配使用呢

2024-08-17 15:50:01
这三个东西如何搭配使用呢

$_mysqli->rollback();
$_mysql->atuocommit();
和 InnoDB如何使用


回复讨论(解决方案)

http://php.net/manual/zh/mysqli.autocommit.php 善用手册

一个小例子

	$mysqli=new mysqli("localhost","root","123456","test");	if($mysqli->connect_error){		die($mysql->connect_error);	}	//将提交设为 false(一旦提交,无法回滚)	$mysqli->autocommit(false);	//保存点 ,把当前记录保存	$sql1="update account set balance=balance-1 where id=1";	$sql2="update account set balance=balance+1 where id=2";	$b1=$mysqli->query($sql1);	$b2=$mysqli->query($sql2);	if(!$b1||!$b2){		//回滚		$mysqli->rollback();		echo "失败--".$mysqli->error;	}else{		//提交		$mysqli->commit();		echo "成功";	}	$mysqli->close();

http://php.net/manual/zh/mysqli.autocommit.php 善用手册


看手册和善用是两个行为和逻辑,看,你不一定善,善是一种结果而不是一种随意,想善不一定就善,但是想看就能马上看。因为看是一种行为

一个小例子

	$mysqli=new mysqli("localhost","root","123456","test");	if($mysqli->connect_error){		die($mysql->connect_error);	}	//将提交设为 false(一旦提交,无法回滚)	$mysqli->autocommit(false);	//保存点 ,把当前记录保存	$sql1="update account set balance=balance-1 where id=1";	$sql2="update account set balance=balance+1 where id=2";	$b1=$mysqli->query($sql1);	$b2=$mysqli->query($sql2);	if(!$b1||!$b2){		//回滚		$mysqli->rollback();		echo "失败--".$mysqli->error;	}else{		//提交		$mysqli->commit();		echo "成功";	}	$mysqli->close();


结构很清晰。