项目需要,要求实现C#监视数据库变化,实现功能如下:当数据库变化,比如有插入,修改等操作时,C#程序能够监视这种变化。
C#的filesystemwatcher组件能够监视一般文件,而难以监视数据库,因为数据库的文件大小是预分配的。有哪位兄弟姐妹能给出C#监视数据变化的实现方法。
流程+代码

解决方案 »

  1.   

    我也一直想问这个问题,我原来想过用timer进行监视日志,但是感觉效率是个问题,然后就是对日志的分析是个大问题,本人感觉SQL应该有这个功能,或存储过程的吧?或者本人自己想了个方法啊,就是你要监视数据库吧? 那你可以在执行插入后,当收到数据库插入信号的时候,用SCOKET给你winform一个消息,告诉他插入数据成功,或者怎样,具体情况你再联系吧
      

  2.   

    看你监控的对象是自己的程序做的数据库操作还是其他的sql server有事件查探器可以跟踪数据库的
      

  3.   

    最近是加班比较多。。思路有了,需要触发器调用C#写的DLL,通过DLL实现与外部程序的关联。。
    正在实现中
      

  4.   

    这个在SQL Server 2005之后的版本是容易实现的,而且有不止一种途径。祝楼主成功。
      

  5.   

    可不可以变通一下:
    用数据库的触发器把变化的数据都弹到一个表(log) ,再用C# 去查询