计算机学习积累

----转载有理,转载是想研究,想研究才会看,看了才会有感想,转载后我有时会写一些自己的感受
数据加载中……

并发提交,单号避免重复

这也是网上看到的,感觉解决方法不错。

这是一个很有代表性的问题,在C/S结构的数据库应用程序中经常碰到,如果这种问题
不能很好地解决,可能造成系统速度缓慢、死锁甚至崩溃。我们在开发的过程中多次碰到了
这样的问题。有些辣手,但还是冲过去了。
    解决这种问题应该本着两个原则:
    1、要建立PRIMARY KEY;
    2、事务开启到提交之间的时间要尽可能地短。
    我们处理的时候用到了两种方法:
    1、建立一个专门的表,用来存放最大值。每次建立新单据的时候,提取该值并加1,
然后再写回。这是一种静态的处理方法。
    2、在单据完成并提交数据时,读取编号并加1,开启事务,提交事务。这个时间非常
短,一般不会出现编号重复,即使出现重复,数据回滚,可以重新提交。这是一种动态的
处理方法。

posted on 2009-04-28 13:31 freebird 阅读(441) 评论(0)  编辑  收藏 所属分类: 数据库


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问