2011-02-16 40 views
1

我有一個有7列的oracle表,它有2個觸發器。 第一個生成一個唯一的標識符(增量序列)Oracle上的事務完整性保證

第二個觸發器比使用utl_tcp來戳遠程服務器並傳遞20個字符的數據。 第二個觸發器被定義爲「AFTER INSERT」

現在,從Oracle觸發器獲取ping的遠程服務器返回並查詢表以查看最近添加的內容(此處有一個狀態字段,它告訴哪些內容區分從舊的一個新的條目。)

現在的問題是,如果我立即查詢它返回說沒有新的數據。 但是,如果我在10秒後查詢表格,它會將新數據返回給我。

沒有這個奇怪的,我應該期待給定的順序觸發器 - >插入 - >觸發器,然後選擇,我應該看到的數據。

這不是一個問題,有沒有其他人看到這個。

我會期待事務的完整性,不管我的oracle服務器有多慢,速度有多慢。

有沒有我需要設置的任何標誌來實現這個?

回答

3

在觸發器觸發後,遠程服務器將不會看到新插入的行,直到它們被提交,這將是一些(可能很小)的有限時間。