我写了个winform的小程序用来查看数据库中的数据(数据库不是我建的,是原先就有的),现在有个问题,就是我把数据库中的数据查询出来后在winform中查看时,数据库中又让别人往里面增加或者删除数据了,这时候我在前台如何知道数据库已经发生变动呢,有没有什么方法用来监控数据库,当数据库发生变动时发出提醒(就像QQ消息提醒)。求大侠指教

解决方案 »

  1.   

    建个message表,让别人操作数据库的同时添加一条信息到message表
      

  2.   

    通过接口更新数据,如果数据发生改变,通知WinForm,WinForm开一个线程随时关注通知
      

  3.   

    不知道用的是什么数据库。
    如果是sqlserver2005以上的话,支持三方类库的加载。就是说,你自己写个类库,用来通知你的应用程序,在数据库里建立一个触发器,在触发器中调用类库,达到你的目的。另外听说sqlserver2005支持windows消息发送,不过没有验证过。在csdn以前的帖子里见到过。
      

  4.   

    在数据库中建个表(以前我处理过类似的问题):
    id | update_time | flag |
    当添加时写入I,
      更改->   U
      删除->   D然后用timer或者线程监控这张表的变化情况, 也可以在表里加上UserName,知道那个用户做什么操作。
    仅供参考!
      

  5.   

    sqlserver2005 以上好像支持的,可以发信通知 我在MS出的ADO.NET书上看到过
    另外你也可以通过server去做,有人提交更新给server,跟新完成后server去通知client,当然可能要使用到socket通信