我最近在一次采访中被问到一个问题。问题是:
我有两个不同的数据库,我需要更新两个数据库上的表。我们想要数据一致性。我更新了第一个数据库中的表,然后在更新第二个数据库时出现错误。那么在这种情况下我能做些什么呢?
我想把所有的东西都放在一个事务中,如果我有一个例外,我坚持我可以回滚。但他们说,由于有 2 个不同的数据库,不可能将它们放在同一个事务中。我不确定我是否理解正确,但我找不到其他解决方案。
现在我在问什么。
1)是否可以在一个事务中对两个不同的数据库进行两次查询?正如我在一些帖子中所读到的那样,这是可能的,但在他们说了什么之后我无法确定。
2)如果无法在事务中管理它们,我该如何回滚第一个数据库中的更改。