现在同时有mysql和oracle两个数据库,因为业务原因,可能需要先更新oracle数据库的某个表,然后再更新mysql数据库的另外一张表。
想问问这种情况能不能使用事务?就是说:如果更新成功的话两个数据库都提交;如果一个数据库提交失败的话,另一个数据库也能自动回滚。
从原理上是不太可能,想问问大家有没有什么特殊的方法,或者什么开源框架能做这样的事?
可以使用 using System.Transactions;类实现
业务层套用事务:
using (TransactionScope scope = new TransactionScope())
{
try
{
//调用的方法
scope.Complete();
return true;
}
catch (Exception e)
{
return false;
}
}