触发器执行失效的问题

如题,有进销存的业务表,和库存表,业务表通过解发器更新库存表,业务表中的SURE字段为1时就触发器更新库存。平常在测试过程中一切正常(目前怀疑压力测试不够),但现在发现在使用过程中,时常出现业务单据SURE字段已经为1,但库存表没有更新的情况,查了很久也查不出什么问题,搜索以往的贴子也没发现类似问题。

说明:程序由BS和CS的部署,都是直接连接数据库进行操作,所以终端数基本超200-300以上,同时每个终端都有可能在确认业务单据的操作。

因为每个业务表基本都有3-4个触发器(insert、delete、update分开),基本中update的触发器代码会比较多。

现在怀疑有没有可能SQL在很多线程同时触发器,有些触发器不会有效执行的情况,不知有没有这情况,请各位高人指点。

作者: zhxhjj   发布时间: 2011-06-13

进销存很少用触发器。

作者: zy112429   发布时间: 2011-06-13

在访问量大的时候,最好不要使用触发器,因为触发器的效率不高.你这个问题仅改触发器貌似解决不了问题.
最好改用存储过程,在存储过程中先向业务表存入数据,再根据业务中字段的值向库存表更新数据.

作者: qianjin036a   发布时间: 2011-06-13

目前的更新方式也是先在业务表中存入数据,然后再通过更新业务表的SURE字段来同步库存,但现在就是SURE更新为1了,库存没变。

现在要改用存储过程,似乎不太现实。

我现在想确认SQL对触发器的执行会不会有这样的情况出现。

作者: zhxhjj   发布时间: 2011-06-13

LZ,好熟悉的名字啊,希望你能解决这个问题,然后告诉我。

作者: laikson   发布时间: 2011-06-13