刚弄一个ERP的项目,发现数据库设计中有很多细节。
1,单据的主键该如何设置
如销售单XSD20070101001
表示销售单2007年1月1日第一个单据,然后新增单据时,如何生成单据编号,并且如何处理单据编号的并发问题。
2,主从表的插入是否需要用事务呢。或者直接组织成sql语句,是否构成事务。
3,在处理事务的并发方面有没有什么建议,时间戳?
------解决方案--------------------
并且如何处理单据编号的并发问题
这个,一般我是在保存的时候才获得这个编号,在事务中处理,一旦冲突,返回一个,再重新保存就是了
2,主从表的插入是否需要用事务呢。或者直接组织成sql语句,是否构成事务。
必须是事务
3在处理事务的并发方面有没有什么建议,时间戳?
指什么并发?并发未必会冲突
------解决方案--------------------
3在处理事务的并发方面有没有什么建议,时间戳?
一般我是在保存的时候才获得这个编号,在事务中处理,一旦冲突,返回一个,再重新保存就是了
这个就解决了并发..
------解决方案--------------------
单据的主键该如何设置
因该是在单据入库时 插入该条单据号 自己感觉应该把 XSD20070101 定死,XSD为固定,20070101自己取服务器时间,后面的001 根据数据库中的单数最后3位来做自增.
主从表的插入是否需要用事务呢。或者直接组织成sql语句,是否构成事务
是的
3在处理事务的并发方面有没有什么建议,时间戳?
不存在并发 并发的概念不是这样的 事物处理因该可以参考:
http://www.aspxuexi.com/sql/sqlserverarticles/2006-10-24/1362.htm