我正在使用OracleDependency
和OnChangeEventHandler
我创建了一个带有此签名的事件处理程序:
void dep_OnChange(object sender, OracleNotificationEventArgs args)
我正在监控的查询是:
"select * from TESTTABLE";
其中TESTTABLE
是一个非常简单的表,有2列。
当我按预期在TESTTABLE中插入记录时,当我删除记录或更新记录时,事件会被触发。
我遇到的问题与插入有关:当我插入有限数量的记录,比如少于100并提交更改时,一切都按预期工作,通过ROWID,我可以得到插入记录的IDS在事件处理程序中,这就是我想要的。 但是,当我插入超过100条记录时,这不再起作用。事件被触发(对于同一个commit语句甚至不止一次)但我无法检索新插入记录的ROWID。
我是否应该在数据库端执行任何操作以确保即使在影响大量记录时也会发送通知?
此致