回滚后查询

时间:2014-04-04 10:00:06

标签: php mysql transactions

快速提问,如何在Mysql中正确回滚事务?

我正在学习交易,这对我来说很新鲜。 PHP代码:

query("START TRANSACTION");
if(!query("CREATE TABLE IF NOT EXISTS xxx ~~")) query("ROLLBACK");
if(!query("ALTER TABLE yyy ~~")) query("ROLLBACK");
if(!query("ALTER TABLE zzz ~~")) query("ROLLBACK");
query("COMMIT");

我的问题是,如果它没有改变表YYY,它将回滚,
它会尝试改变ZZZ后的表吗?或者一次回滚意味着它会忽略所有其他查询?

如果YYY失败,我应该以某种方式修改我的代码以防止改变ZZZ吗?

PS。 query() returns false if it fails, or true if it succeed

0 个答案:

没有答案