首页 新闻 搜索 专区 学院

Winform根据数据库表的更新而更新

0
悬赏园豆:30 [已解决问题] 解决于 2007-12-14 09:59
想实现这样的功能,在A机器上更新数据库之后,B机器上运行的该程序能够马上更新界面,使得其界面的内容跟数据库中的内容相符。<br>语言用的是C#,数据库是MySql<br><br>希望回答得能够具体一点!<br>
问题补充: A跟B运行的是同一个应用程序 如果用MySql触发器,它是怎样通知应用程序的? 能不能具体点!
随风逝去(叶进)的主页 随风逝去(叶进) | 菜鸟二级 | 园豆:227
提问于:2007-12-11 21:12
< >
分享
最佳答案
0
程序加一个功能:发送触发通知/接收触发通知 A机数据更新后对外发送触发通知,B机收到后即更新数据,这样可以减少数据服务器压力
随机 | 菜鸟二级 |园豆:310 | 2007-12-12 16:06
其他回答(7)
0
有两个思路: 1. 程序中设置一个Timer,定时查询数据库,更新界面 2. 数据库中建一个触发器,一有改变就通知程序(不知道MySql有没有这个功能) 仅供参考
麒麟.NET | 园豆:3614 (老鸟四级) | 2007-12-11 22:23
0
MySql 5支持触发器了
Elden | 园豆:185 (初学一级) | 2007-12-11 22:25
0
是啊,使用一个触发器..
Zhuang miao | 园豆:30 (初学一级) | 2007-12-12 01:08
0
用触发器比较好
AndyFish | 园豆:1575 (小虾三级) | 2007-12-12 08:38
0
用Timer比较好,只要每个客户端定时查询数据库服务器就可以了。 MySQL触发器如何通知应用程序?
Anders Cui | 园豆:1570 (小虾三级) | 2007-12-12 09:26
0
我个人也觉得用Timer控件定时查询数据库好些,不过这样客户端都会定时查询数据库,给数据库服务器带来一定的压力,尤其是客户端比较多的情况下! 数据库表触发器如何更新客户端的数据显示呢?不知道怎么实现的。
刚刚 | 园豆:3151 (老鸟四级) | 2007-12-12 11:26
0
印象中,SQL Server的触发器可以使用C++写。不知道MySql有没有这样的功能。 我也认为Timer比较好,可以有效的降低程序和服务器的耦合。关于性能,我觉的可以在数据库中保存一个表,其中就一个字段和一行。存储一个递增的整型量。 每次更新数据库的时候,同时将这个量递增一。客户端通过查询这个值来确定是否读取具体的业务数据。 呵呵,自己写一个服务,专门负责维护这个值,而不需要存储到SQL Server中,可能性能更好。毕竟,数据库连接资源也是一个非常稀缺的资源。尽量少用。
Colin Han | 园豆:3041 (老鸟四级) | 2007-12-12 13:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册