关于编号增长的问题
现在数据库里有一个字段,定义成一个varchar型,但是实际存放的是一个数字编号,为了唯一确定某一条记录。每插入一条新记录的时候,就先读出现在数据库中最大的,把最大的数字加一,然后再插回去,还要把这个数字给返回在页面上显示出来
现在的问题是,如何保证多个用户同时操纵的时候,两个用户得到的数字不会是相同的?因为两个用户可能读出相同的最大数值,然后再插入相同的就会出错。
如果使用每次要取最大的时候都先把数据库最大的+1然后更新,这样可能会导致该数字浪费的情况,因为用户读了数字之后可能不一定提交,也就是不一定插入这条记录
总之,就是又要避免浪费序号,又要避免多用户同时操作时的冲突?
使用vb.net的web application
哪位大虾给点意见,数据库设计上的修改也可以。。多谢了。。