sql - 2 个单独的任务 - 相关但首先需要完全完成
问题描述
现在我有一个应用程序,只需单击一个按钮即可插入数千行。他们在数据库中填充一个表(或许多表,但让它保持简单),并且插入或更新的任何内容都需要使用存储过程进行计算/重新计算。最初,我在那里有一个触发器,用于查找任何修改并将参数传递给存储过程,但它花费的时间太长。然后我想到将参数值插入“队列”表并从那里读取存储的过程。我在这个队列表上放置了一个触发器,最初认为一旦发生插入,我们可以运行 proc,然后从队列表中删除记录......但是使用触发器插入另一个表的触发器仍然链接并且正在占用该过程需要一段时间才能完成。我想保持这些任务相关但分开。我希望第一个触发器运行,将所有值转储到队列表中,并在 SP 启动之前完全完成。我最好的选择是拥有此队列表中的值并设置每 10 秒运行一次的作业,以查看是否有任何内容,或者您可以推荐其他方法吗?
谢谢!
解决方案
我想经过一番思考后我要做的是让队列表上的触发器仍然存在,但它不会触发存储的过程,而是会启动一项工作。这样它就可以快速通过而不是等待过程。作业本身将有一个存储过程,它回顾队列表并在删除记录之前执行必要的步骤。
推荐阅读
- angular - Angular *ngFor 仅显示 1 个数据项
- java - SharedPreferences 是外部存储还是内部存储?
- powershell - 使用 WinRM 时出现 PSRemotingTransportException - IIS Web 应用部署
- rust - 如何处理来自 actix-multipart 数据的文件而不将其保存到磁盘
- node.js - 无法从本地存储中检索数据(Angular 8)
- mysql - 无法将 VPS 上的 NodeJS 连接到另一个主机上的 MySQL
- r - 如果字符串包含任何单词列表,R每行返回真或假
- html - 如何模糊除一个元素之外的所有内容
- daml - 与 GHCI 等效的 daml repl
- spring-boot - 为什么在 SpringBoot 测试中使用 @AutoConfigureMockMvc 时总是出现 404?