在我的场景中我必须从sql server中提取数据并将其迁移到sharepoint中,只要将记录输入数据库,我就必须运行执行迁移过程的控制台应用程序,我的客户端给了我严格的要求他希望数据在数据库中输入时立即迁移。
有两种可能的方法,我认为这项任务可以通过
来完成1安排控制台应用程序在每1分钟后运行
2个数据库池(我只听说过这个问题,你们可以帮助我提及互联网上与这种方法相关的文章和其他材料)
所以你们怎么想?我应该选择哪种方法?
答案 0 :(得分:1)
.NET有一个SQL通知
这比投票更有效
Using SqlNotificationRequest to Subscribe to Query Notifications
你确定一个控制台应用程序是正确的方法吗? 考虑一项服务。
还考虑SISS为乔推荐。
答案 1 :(得分:0)
我可能会查看一个执行迁移的SSIS包,并可能从插入表中的触发器执行它。这样就没有延迟了,一切都在一个地方完成。
我不知道你是怎么做到的 - 不是SSIS的人 - 但我知道可以做到。
如果迁移需要很长时间才能执行,或者记录很快就插入到数据库中,这可能不是一个好主意,因为它们的插入速度可能比迁移速度快。如果是这种情况,那么批量提取新记录的预定作业肯定是要走的路 - 无论是持续运行的Windows服务还是使用计时器触发事件,还是每隔x分钟运行一次的Windows计划任务,或者每x分钟运行一次的SQL Server作业 - 此时,选择哪个并不重要。