如何通过oracle中的数据库链接向表中插入一行

时间:2014-06-12 16:58:17

标签: oracle

我在oracle的2个不同的连接中有2个表。我称之为服务器连接和客户端连接。我创建了一个数据库链接来传输数据,它工作正常。当我从服务器通过数据库链接将新记录插入客户端的表中时,它没问题!但是当我在客户端中选择该表时,不会显示该记录。例如,我在客户端有一个记录" 1"的表。

在服务器端:

select * from [table_name]@[database_link_name]  

工作正常!我可以得到记录" 1"。然后我从服务器在客户端表中插入一条新记录,然后再次选择:

insert into [table_name]@[database_link_name] values(2)

好的,我可以获得2条记录" 1"和" 2"。但在客户端,当我选择该表时:

select * from [tblname]

它只返回记录" 1"。如何在服务器端获得2条相同的记录。我的问题在哪里? server中的insert命令或客户端中的select命令?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果我关注您的说明,您只需在服务器上发出commit即可。执行insert

的会话

会话永远不会看到来自其他会话的未提交数据,无论是本地更改还是远程更改。数据库链接并不真正相关,如果数据已从客户端的其他会话中插入,则会看到相同的效果。

详细了解文档中的concurrency and consistencytransactions