Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 在SQL表中插入新条目时触发RESTAPI_.net_Triggers_Windows Services_On The Fly_Sql Job - Fatal编程技术网

.net 在SQL表中插入新条目时触发RESTAPI

.net 在SQL表中插入新条目时触发RESTAPI,.net,triggers,windows-services,on-the-fly,sql-job,.net,Triggers,Windows Services,On The Fly,Sql Job,因此,我希望在SQL表中获得新记录后,立即通过RESTAPI将最近插入到表中的数据推回到另一台服务器。因为我的客户机需要对另一台服务器进行实时数据更新。 我不确定实现这一目标的最佳方式是什么。我有以下选择,但有人能告诉我应该选择什么样的选择才能满足我的要求吗 SQL触发器(但如何在触发器中调用restapi,即使可能,这是一种好方法吗?) SQL作业(SQL作业应该在特定时间安排,但我希望数据在同一时刻推送) Windows服务(何时调用Windows服务?是否可能将rest api调用代码写入

因此,我希望在SQL表中获得新记录后,立即通过RESTAPI将最近插入到表中的数据推回到另一台服务器。因为我的客户机需要对另一台服务器进行实时数据更新。 我不确定实现这一目标的最佳方式是什么。我有以下选择,但有人能告诉我应该选择什么样的选择才能满足我的要求吗

  • SQL触发器(但如何在触发器中调用restapi,即使可能,这是一种好方法吗?)
  • SQL作业(SQL作业应该在特定时间安排,但我希望数据在同一时刻推送)
  • Windows服务(何时调用Windows服务?是否可能将rest api调用代码写入Windows服务并通过sql触发器运行服务?)
  • 控制台应用程序(在我的研究过程中,我了解到可以通过sql作业调用控制台应用程序,但是在表中插入新条目时如何调用sql作业)
  • 我很困惑,在什么样的过程中对我有效,我如何才能将上述项目(或任何其他项目)一起或单独使用,以实现我想要的


    任何形式的帮助或建议都将不胜感激

    我认为在这种情况下,触发器的杀伤力太大了,而且您可能会发现很难直接从触发器调用RESTAPI。只要您只需要每分钟左右更新一次API,为什么不使用Windows服务,甚至是计划任务?您可以分配每一行和自动编号ID,然后每次运行服务时都记住最新的一行。例如,如果您的最后一行ID为100,请查询100以上的任何内容。@Terrylenox感谢您的回复!但我应该在windows服务中使用哪个事件或控件?就像我最近使用filesystemwatcher监视一个特定的文件夹一样,所以如果我可以得到监视sql表的相同类型的控件,那就太好了。我认为您甚至不需要它,您可以使用一个循环来监视您的最大ID号,这将是一个非常便宜的查询。可能会有10秒的延迟,但这肯定是可以接受的。如果ID更改,只需选择自上次更改以来插入的行,并将它们发送到REST API。@ShilpaSoni您是如何解决此问题的?我似乎和你处于相同的位置。@PHPNoob是的,我就是这么做的,所以我编写了在控制台应用程序中调用rest API的代码,然后创建了一个SQL作业,并计划每一分钟运行一次。此SQL作业检查是否有一些数据要推送,如果是,则执行控制台应用程序。希望这有帮助。