我正在为 iPhone 应用程序构建一个 RESTful API。
当用户“ checkin ”[将新行插入表中]时,我想从该插入中获取数据并调用 Web 服务,该服务将根据该插入发送推送通知。
我能想到的唯一方法是通过 trigger
,或者有实际的插入方法,插入成功后,调用Web服务。这对我来说似乎是个坏主意。
想知道您是否对此有任何想法,或者是否有我没有想到的更好的方法。
最佳答案
即使在技术上可以,这也不是一个好主意!触发器应该非常精简,并且绝对不应该涉及冗长的操作(Web 服务调用肯定是这样)!重新考虑你的架构——应该有更好的方法来做到这一点!
我的建议是将“注意”您需要在触发器中调用 Web 服务的任务与该 Web 服务调用的实际执行分开。
就像是:
INSERT
以保持精简和快速 - 仅此而已)触发器是一个非常挑剔的东西 - 它应该总是非常快速、非常精简 - 执行
INSERT
最多或两个 - 并且一定要避免在触发器中使用光标或其他冗长的操作(如 Web 服务调用)Brent Ozar 在 The Top 10 Developer Mistakes That Don't Scale 上进行了精彩的网络广播(在 SQL PASS 上呈现)而触发器是他关注的第一件事!强烈推荐
关于web-services - SQL 触发器可以调用 Web 服务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6153330/