标签: sql-server triggers constraints race-condition sql-server-2017
这只是一个例子,但它有望说明这个问题 - 想象一下我想将一个表限制为十行,并创建一个AFTER INSERT触发器count(...)表中的行,滚动如果有超过10个,则支持交易。
AFTER INSERT
count(...)
是否有可能存在两个事务INSERT的竞争条件,两者都看到计数正常(因为两者都未提交),然后两者都提交,超出限制?
INSERT
在触发器的with(nolock)查询中添加count(...)是否意味着至少两者都会失败(因为他们会看到彼此未提交的行)?
with(nolock)