在程序中,事务处理是很重要的,然而,由于其复杂性和重要性,它容易被忽视。以 MySQL 和 PHP 为例,以下是当必须通过编程方式来处理事务时,应当注意的几点:
– 确保数据的一致性
当进行编程处理时,必须确保所有操作都是原子性的,必须具备“原子性”这一特性,也就是只有“全部成功,才算成功,全部失败,才算失败”的操作。
– 开启事务
MySQL 事务是以“自动提交模式”开始的,因此每次操作都会立即生效,不存在回滚操作,可以使用以下语句禁止自动提交,开启 MySQL 事务处理:
mysql_query("set autocommit=0", $link);
mysql_query("start transaction", $link);
– 做好数据操作
在 PHP 中使用 MySQL 进行数据库操作后,程序就会根据设定来执行相应的操作,通常情况下,MySQL 会在程序第一句就生效。
– 提交 or 回滚
提交操作会释放所有事务锁定的资源,而回滚操作会将所有操作还原回去,在事务中,可以使用以下命令来达到目的:
// 提交事务:
mysql_query("commit", $link);
// 回滚事务:
mysql_query("rollback", $link);
– 事务结束
在结束 MySQL 事务处理时,必须还原自动提交模式,可以使用以下语句结束 MySQL 事务处理:
mysql_query("set autocommit=1", $link);
以上就是 mysql 与 php 开发中的事务处理的简介,从而可以帮助读者更好的理解事务处理的工作原理,并着重强调了在编程中必须注意的几个方面。