欢迎访问WDPHP素材源码!今天是2024年05月03日 星期五,熬夜对身体不好,早点休息吧!
您好,游客 [ 马上登录 | 注册帐号 | 微信登录 | QQ登录]
当前位置:首页 > 教程 > 其他教程 > 

InnoDB表事务和锁表示例
栏目分类:其他教程    发布日期:2023-10-19    浏览次数:223次     收藏

经过自己的测试,必须是InnoDB表才能执行事务,MyISAM表不支持事务,事务和锁表不要一起用,因为unlock tables解锁表时会造成事务的提交,要不然可能达不预期,至少我自己测试是没有达到自己的设想。

//事务
$mysqli->query("BEGIN");//开启事务
$sql="insert into abc (title) values ('".date("H:i:s")."---此条为事务提交') ";
$mysqli->query($sql);
$mysqli->query("COMMIT");//"COMMIT","ROLLBACK"事务回滚

sleep(5);//此过程中等待5秒,刷新数据表可以看到之前事务提交是已经有数据的,表也可以刷新,但5秒后处理锁表卡死等待状态

//锁表
$mysqli->query("lock tables abc write");//多表锁定:lock tables abc write,bcd write");
$sql="insert into abc (title) values ('".date("H:i:s")."---此条为锁表写入') ";
$mysqli->query($sql);
sleep(10);
$mysqli->query("unlock tables");
exit;

相关热词: InnoDB事务示例

源码 模板 特效 素材 资源 教程 站长