如何在MS SQL表中的新行之后执行C#-Code

时间:2016-04-04 13:32:23

标签: c# sql sql-server

我认为标题是这样说的。

我尝试在MS SQL-Table获取新行后执行C#-Code。 有谁能解释我怎么做,拜托?

我尝试使用C#-Class' SqlDependency'但我认为,这不是正确的解决方案,因为必须始终重新启动C#-Code。

我应该尝试使用T-SQL和SQL-Agent或类似的东西吗?也许我对C#完全错了,我不知道,我真的需要你的帮助!

我在这里很新,所以请耐心等待我:)

奥地利的问候 加扎

1 个答案:

答案 0 :(得分:0)

如果你想要一个简单的解决方案,你可以试试这个:

使用System.Data.SqlClient连接到Database

然后你可以用一个Timer来运行" RowCountCheck"在特定的时间间隔内:

Timer timer = new Timer();      //using using System.Timers;
timer.Interval = 5000;          //Time for 1 interval in milliseconds
timer.AutoReset = true;         //Start again when elapsed
timer.Elapsed += Timer_Elapsed; //Method called when timer elapsed

private int _lastRowCount;

private void Timer_Elapsed(object sender, ElapsedEventArgs e)
{
   //Check row Count
   //Use your SqlClient here to get the rowCount


   if(_lastRowCount < currentRowCount)
   {
      //Row was added: Do your work here:
   }


  //Set the currentRowCount as _lastRowCount for the next check
   _lastRowCount = "yourValue";
}

链接:

  

http://www.w3schools.com/sql/sql_func_count.asp - 如何从SQL表中获取RowCount

     

https://msdn.microsoft.com/de-de/library/system.data.sqlclient(v=vs.110).aspx - SqlClient