请教跨数据库事务的问题
现在有两张表,分别在不同的数据库,table1在db1数据库中,table2在db2数据库中,现需要在这两张表中做插入事务操作,我在网上看了下,可以通过分布式事务进行提交,具体代码如下:
但是程序运行到conTwo.Open(); 的时候就报“卸载Appdomain 时出错。 (异常来自 HRESULT:0x80131015)”的错误,请高手指教下这是为什么?
还有一点我知道可以通过存储过程去实现跨库之间的事务操作,但是我想通过c#代码的方式去实现,请问还有其他方法吗?
try { using (TransactionScope scope = new TransactionScope()) { //更新northwind数据库的Employees表 using (SqlConnection conOne = new SqlConnection("server=.;uid=sa;pwd=123;database=northwind")) { conOne.Open(); SqlCommand command = new SqlCommand("update Employees set lastname='chen' where employeeid='1'", conOne); int i = command.ExecuteNonQuery(); } //更新pubs数据库的jobs表 using (SqlConnection conTwo = new SqlConnection("server=.;uid=sa;pwd=123;database=pubs")) { conTwo.Open(); SqlCommand command = new SqlCommand("update jobs set job_desc='chen' where job_id='1'", conTwo); int i = command.ExecuteNonQuery(); } scope.Complete(); //提交事物 } } catch (Exception ex) //发生异常后自动回滚 { //throw; }但是程序运行到conTwo.Open(); 的时候就报“卸载Appdomain 时出错。 (异常来自 HRESULT:0x80131015)”的错误,请高手指教下这是为什么?
还有一点我知道可以通过存储过程去实现跨库之间的事务操作,但是我想通过c#代码的方式去实现,请问还有其他方法吗?
...全文
相关推荐
EF5.0中的跨数据库操作
**初步尝试与问题**: - 在不使用事务的情况下,直接操作两个数据库可能会导致部分操作成功,部分操作失败,因为EF的默认事务机制无法跨数据库工作。4.
基于JDBC技术实现跨数据库连接与操作的统一解决方案_涵盖MySQLOraclePostgreSQLSQLServer四大主流关系型数据库的连接查询事务处理连接池管理.zip
事务处理是保证数据一致性和完整性的关键。在跨数据库的事务管理中,需要考虑到分布式事务的问题,即一个事务可能涉及多个不同数据库的操作。
Java中JDBC事务与JTA分布式事务总结与区别
但它的局限在于无法跨数据库处理事务,因此在分布式环境中处理多数据库操作时,JDBC事务就显得力不从心。接着,我们来看JTA事务,它是为了解决分布式场景下的事务一致性问题而设计的。
跨数据库同步工具TJS
【跨数据库同步工具TJS】是一款专为解决数据在不同数据库间迁移和同步问题而设计的高效工具。
分布式事务与Seata.pptx
分布式事务的产生是由于业务的不断扩大,用户数的增加,导致单个库或表无法存储所有数据,需要将数据分布在多个库或表中,从而引发跨数据库的事务操作问题。


