日期:2014-05-16  浏览次数:20725 次

Oracle 如何实现 根据自定义的编码规则产生序列号
各位大侠吗?小弟求助啊!

AA00 是最小值,

ZZ99是最大值

增加规则是

AA00.....AA01....AA99....AB00.....AZ99....BA00......BZ99....ZZ99

 我的思路是AA----ZZ建立一个sequence  X

00---99建立一个sequence  Y

SN=X||Y





遇到的问题:AA00

                        AB01

                        AC02

                            .....

                         ZZ99



有没有办法发让后面的数字到99了 ,前面再增加啊AA00-----AA99--->AB00--->AB99.......>ZZ99

 

------解决方案--------------------
Help!
------解决方案--------------------
大部分解决了,现在还剩下,如何sequence在不nextval的情况下得到currval值。

因为sequence X,Y 组成SN=X
------解决方案--------------------
Y 要Y增长最大了,X才取Nextval值,然后一直用X的currval值,知道Y再次到最大值。。。

------解决方案--------------------
已经解决了!
------解决方案--------------------
楼主,麻烦给出解决方案,给大家学习一下吧。