有没有办法使用 DBMS_Alert 通知 Winform 应用程序数据库更改
我正在尝试使用 Oracle 10g 获取一个 winform 应用程序来刷新数据库更改时的嵌入式浏览器。唯一的问题是我不允许使用数据库更改通知。我很好奇是否有人有办法使用 DBMS_Alert 的内置包,并且在数据库更改时对 winform 应用程序进行了一些操作。
谢谢,安德鲁
I am trying to get a winform app to refresh an embedded browser on a database change using Oracle 10g. The only problem is that I am not allowed to use Database Change Notification. I am curious if anyone has a way of using the built-in package of DBMS_Alert and have had some action happen to a winform app on a database change.
Thanks, Andrew
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
深思......
如果您使用 ODP,您可以使用 Oracle 高级队列/流
以及此处。
这样您的表单应用程序就可以订阅队列并收到更改通知。
然而,如果您只想将新的 PO # 添加到下拉列表中,这对您的应用程序来说可能是巨大的杀伤力!
我以前使用过流,它按预期工作,但它有很好的研究和试用水平。获取点击内容时出错。
food for thought...
if you are using ODP, you could use Oracle Advanced Queuing/Streams
and here.
this way your form app can subscribe to a queue and be notified of a change.
This may, however, be massive overkill for your application if you just want to add a new PO # into a drop down!
I have used streams before and it works as expected, but it had a nice level of research and trial & error to get things to click.
我必须这样做才能让它发挥作用。我知道它会锁定窗口,直到发生事件,但至少它可以与 DBMS_Alert 一起使用。我在计时器中设置了这段代码:
这给了我我需要的东西。我不知道是否有更好的方法,但这是我能想到的唯一解决方案。
I had to do it like this for it to work. It holds the window in lock until an event occurs i know, but at least it works with DBMS_Alert. I set this code inside a timer:
This gives me what I need. I don't know if there is a better way to do it, but this is the only solution I could come up with.
最好不使用定时器。下面的代码示例使用后台线程
这是代码片段
It is better to use without timer. The below code sample is with background thread
Here is the code snippet