1

我有一个 7 列的 oracle 表,上面有 2 个触发器。第一个生成唯一标识符(递增序列)

第二个触发器使用 utl_tcp 戳远程服务器并传递 20 个字符的数据。第二个触发器定义为“AFTER INSERT”

现在从 oracle 触发器获取 ping 的远程服务器返回并查询表以查看最近添加的内容(那里有一个状态字段,它告诉哪个区分新条目和旧条目。)

现在的问题是,如果我立即查询,它会返回说没有新数据。但是,如果我在 10 秒后查询表,它会返回新数据。

这不是很奇怪吗,我应该期待给定订单触发器 -> 插入 -> 触发器然后选择,我应该看到数据。

这不是问题吗,有没有人看到过。

我希望事务完整性不管我的 oracle 服务器有多慢、多小。

我需要设置任何标志来实现这一目标吗?

4

1 回答 1

3

远程服务器在提交之前不会看到您新插入的行,这将是触发器触发后的一些(可能很小)有限时间。

于 2011-02-16T16:06:41.403 回答