网络版的电子称管理软件,一个客户端通过串口连接所有的称,然后一但有新的数据采集上来,立刻保存到数据库。。怎样才能让其余的客户端也立刻得到这条新的数据。
现在我的办法是,每个客户端用timer 控件,巡检数据库然后"select * from 表名" 但是数据量大了以后好慢呀。。 
怎样才能只取,有变化的数据呀。

解决方案 »

  1.   

    具体方式太多了,大致原理可以抽象归纳为“单独把有变化的数据另外放在一个专门的地方供其它客户端程序读取”,比如数据库中某个单独的小表,或服务器上某个单独的数据文件。而且,既然你用的是VB来开发程序,又不是WEB程序实现推送功能那么麻烦,可以利用服务端程序和客户端程序的广播通信,在有数据变化时才通知各客户端程序来取,而不必用TIMER控件,可减少对网络的不必要占用。
      

  2.   

    http://topic.csdn.net/u/20080430/10/c25a4070-6b29-4b0c-b02d-4f2a7c28a3d1.html
    这是以前一个人提出的相同问题。。但是也没有太好的解决办法