比如 a 注册的时候,生成一个编号,01001 但是如果同时有用户在申请,我怎么能保证这个号只给当前的用户用呢,而不被别的并发的用户抢注册掉呢

解决方案 »

  1.   

    楼主也可用触发器、函数实现。。以下为实现自编号的使用例子楼主可参考
    http://blog.csdn.net/roy_88/archive/2006/12/01/1424370.aspx
      

  2.   

    最简单且安全的作法就是用个identity列.
    比如某个用户注册后 identity 列值为 23
    你要输出 000023 ,那么就是显示问题了.当然,你希望表中存这样的数据也可以. 用个计算列就可以了.CREATE TABLE tb(OrderID INT IDENTITY(1,1),OrderSerial AS RIGHT('000000000' + RTRIM(OrderID),10),V VARCHAR(10))
    INSERT tb(v) SELECT 'aa'
    UNION ALL SELECT 'bb'SELECT * FROM tbDROP TABLE tb