我正在研究一种以嵌套方式调用sql触发器的解决方案,稍后我将解释这个问题,让我先介绍一下这些表。
是的,这是一个专为零售店设计的erp,Bill详细信息表包含行bill Items
billDetails
subproductLocation
**now**
有一个触发器在BillDetails插入后运行,其功能是从SubProductAtLocation中扣除数量,更多的是在subproductAtLocation中插入,更新之后有触发器,它会写入审计日志。
**Problem**
我不希望subproductAtLocation触发器运行,如果由于billdetails触发更新而调用它,通常我可以暂时禁用触发器或者sp_configure 'nested triggers' n
但是不能这样做,因为sql server是共享的这样做既不可行也不可行。
**Possible Solution**
如果我可以将某个标志值存储在某个由subproductatLocation触发器检查的位置,并且如果设置了flag则可以回滚事务。可以在BillDetails触发器的最后一行清除此标志。
请原谅我糟糕的知识 感谢
答案 0 :(得分:0)
如果你把'flag'放在第二个表中,那么只在触发插入期间将其设置为'special'值,那么第二个触发器只有if检查如果设置了该值则不写日志...