0

嗨,我正在从 .net 代码调用存储过程。存储过程根据从 .net 代码发送的参数计算某些值。在计算某些值之后,在存储过程的末尾执行三个插入到同一个表的语句。我发现有时这些插入语句不会在表中插入记录。这很奇怪,因为我已经彻底检查了存储过程是否被正确调用并且参数也被发送。此外,当只有 1 个线程运行时,不会出现问题。只有在我运行 9 个并行访问同一个存储过程的线程的情况下。

请建议是否需要检查某些设置或缺少某些设置。

我怀疑可能会出现死锁情况并阻止插入。但我不确定。我还检查了表索引中的 allow_row_locks 和 allow_page_locks,它们被设置为“ON”;

4

1 回答 1

0

我会说您的代码正在生成要插入的相同值,从而违反了表的约束。

表中是否有主键或唯一键?也许表中的触发器中有一些检查可能会导致这种情况?

于 2013-01-18T12:33:59.967 回答