PHP中mysql_rollback()函数的用途是什么?
如何使用? 请用一些例子解释我,
PS:请不要给我链接到php.net或者mysql网站,我不需要AUTHOR语言来理解它,我需要开发者的方式来理解... 我希望你明白......提前致谢。
更新
如果我在表中更新了某些内容,我可以使用此函数重置以前的值吗?
答案 0 :(得分:4)
如果要同时执行多个语句,可以在MySQL中使用事务。您发送BEGIN
以启动事务,然后为您要执行的语句发送mysql_query
- s。如果您现在发送COMMIT
,则会执行这些语句,如果您发送ROLLBACK
,则会被取消而不会产生任何影响。因此,对于您的其他问题:ROLLBACK
将中止您之前发送的查询并恢复为数据库中的旧值。但是,一旦提交,您就不能再回滚,因为事务完成了。
答案 1 :(得分:1)
这会发出一个ROLLBACK语句,它会回滚当前事务。
答案 2 :(得分:1)
mysql_rollback()
回滚当前交易。我不熟悉交易,我会建议一些Wikipedia阅读。这是一个非常有用的概念。
答案 3 :(得分:1)
事务是一种确保ALL语句成功或不执行任何操作的方法。
例如,要将资金从Bob的银行帐户转移到Alice,可以这样做:
更新帐户SET金额=金额 - 100 WHERE name ='Bob'; 更新帐户SET金额=金额+ 100 WHERE name ='Alice';
但是想象一下在第一个语句之后出现问题(服务器崩溃,因为电源耗尽)。银行现在从鲍勃那里扣了100美元,但爱丽丝一无所获!
为避免这种情况,我们使用交易。正如Etan解释的那样:你首先是BEGIN,然后你执行所有的陈述。如果一切顺利,你然后COMMIT。只有这样才能保存修改。
如果出现问题(例如,没有Alice的帐号),您可以回滚,或者如果出现严重错误(即电源关闭),服务器将回滚。
回答您的更新 如果您已经在表中更新了某些内容,则只有在以BEGIN开头并且尚未进行COMMIT时才可以使用此函数重置以前的值,是的。