从数据库中识别新插入的值

时间:2014-04-08 16:36:10

标签: c# sql

这是我的问题。

我有两个共享同一个数据库的应用程序。什么应用程序1将一些值(行)插入数据库table1。

一旦Table1更新,我需要触发(触发)事件以从application2获取新插入的值(行)到表1。

我有一些SqlDependency的迹象,但不知道这是最好的方法,以前从不使用它。

帮帮我

1 个答案:

答案 0 :(得分:0)

许多设计师在每个表CreateDT,CreateBY中包含以下列。 (您还可以包含ModifiedDT,ModifiedBY列)。这些列正是您所期望的,行创建的日期时间和创建行的“代理”。

因此,如果表中有这两列,那么application2可以使用以下命令轮询数据库以查看上次更改并在新的时候执行操作

  SELECT *
  FROM table1
  WHERE CreateBY = 'Application1'
  ORDER BY CreateDT DESC

您还可以跟踪最后一个流程记录,并将其添加到查询中,以便仅在发生某些事情时获取结果。

  SELECT *
  FROM table1
  WHERE CreateBY = 'Application1'
    AND CreateDT > @lastprocesed
  ORDER BY CreateDT DESC