回过一个类似的帖子,每天重新编号的:http://www.csdn.net/expert/topic/609/609407.xml?temp=.2307703

解决方案 »

  1.   

    select max(convert(int,substring(ID,12,4))+1 as MaxID from table where substring(ID,1,10)=convert(char(10),getdate(),120)
      

  2.   

    取出MaxID后,select convert(char(10),getdate(),120)
    +'-'+right('0000'+convert(varchar,MaxID),4) 即可得到新编号,注意,我写的程序只适用于SQLServer,其他数据库你自己试试。
      

  3.   

    用存储过程比较简单,但写过程有点麻烦
    也可以在 Delphi 中用代码实现
    首先这个ID 字段大小为12位,前面8位取得系统时间(Long 格式),后面4位用递增的方法实现。