Sql oracle-通过dblink提交?

Sql oracle-通过dblink提交?,sql,database,oracle,commit,dblink,Sql,Database,Oracle,Commit,Dblink,如果我以用户smith的身份连接到oracle数据库,并发出以下3个命令: update smith.tablea set col_name = 'florence' where col_id = 8; insert into bob.other_table@mylink values ('blah',2,'uncle','new'); commit; 这是否意味着对本地表(smith.tablea)的更新和对远程db表(bob.other_表)的插入都已提交,还是只提交了对本地表的更新

如果我以用户smith的身份连接到oracle数据库,并发出以下3个命令:

update smith.tablea
set col_name = 'florence' where col_id = 8;

insert into bob.other_table@mylink
values ('blah',2,'uncle','new');

commit;
这是否意味着对本地表(smith.tablea)的更新和对远程db表(bob.other_表)的插入都已提交,还是只提交了对本地表的更新


注意:“mylink”表示到远程数据库的数据库链接。

在这种情况下,只有在远程事务和本地事务成功时,事务才应该工作

有关分布式事务的更多信息:

来自

Oracle两阶段提交机制对用户完全透明 发布分布式事务的用户。事实上,用户甚至不需要 知道事务是分布式的。一种COMMIT语句,表示 事务的结束自动触发两阶段提交 提交事务的机制。没有编码或复杂语句 在主体中包含分布式事务需要语法 数据库应用程序的


所以-是的,如果一切顺利,两个操作都会执行。

您是否检查了bob.other_table@mylink在另一个会话中检查数据是否存在或是否有效?