多个数据要同时操作,如何保证数据的完整性,以及一致性?
答:事务,是常见的做法。

举个栗子:

用户下了一个订单,需要修改余额表,订单表,流水表,于是会有类似的伪代码:

start transaction; CURD table t_account;  any Exception rollback; CURD table t_order;      any Exception rollback; CURD table t_flow;        any Exception rollback;commit;

如果对余额表,订单表,流水表的SQL操作全部成功,则全部提交

如果任何一个出现问题,则全部回滚

事务,以保证数据的完整性以及一致性。

事务的方案会有什么潜在问题?

答:互联网的业务特点,数据量较大,并发量较大,经常使用拆库的方式提

收藏 打印