gpt4 book ai didi

c# - OracleDependency 未触发事件

转载 作者:行者123 更新时间:2023-11-30 17:24:35 25 4
gpt4 key购买 nike

我有一个到 ORACLE 10.2 数据库的 Oracle 连接,想监听一个表的变化。连接的用户被授予权限“CHANGE NOTIFICATION”。

Listening是用下面的方法初始化的:

private OracleDependency SubscribeToTable(string tableName)
{
string sql = "select * from " + tableName;
var cmd = new OracleCommand(sql, this.connection) { AddRowid = true };
var dep = new OracleDependency(cmd);
cmd.Notification.IsNotifiedOnce = false;
dep.OnChange += this.dep_OnChange;
cmd.ExecuteNonQuery();
return dep;
}

当我在观察表中插入一行并提交时,永远不会触发事件 dep_OnChange。我做错了什么?

更新:

检查故障排除列表并发现一切正常后,我以 DBA 身份连接到 Oracle 并检查发生更改时应通知的 IP 地址 (SELECT * FROM user_change_notification_regs)。由于某种原因,IP 地址指向 VMWare 虚拟网络适配器,尽管通知请求是从物理机而不是 VM 发起的。禁用该虚拟网络适配器后,一切正常。

最佳答案

您是否在 documentation 中完成了故障排除? ?

关于c# - OracleDependency 未触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/790420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com