问题如 http://www.iteye.com/wiki/problem/34022 知道上 所说
1 先建立序列
create sequence testseq increment by 1 start with 1 maxvalue 999;
2 采用Oracle 的函数
select to_char(sysdate,'yyyymmdd')||lpad(testseq.nextval,3,'0') from dual
3 写存储过程 让序列归零
create or replace procedure houseNoProce
as
n number(10);
tsql varchar2(100);
Begin
select testseq.nextval into n from dual;
n:=-(n-1);
tsql:='alter sequence testseq increment by'|| n;
execute immediate tsql;
select testseq.next

在Oracle中,可以通过创建序列和结合日期函数来生成当天日期加流水号的编号。首先创建一个序列,然后使用`to_char(sysdate, 'yyyymmdd')`获取日期并用`lpad`填充序列的值。为了每天重置序列,可以编写存储过程和调度作业(job)。存储过程用于将序列递减到0,然后恢复递增。最后,设置作业在每天0点运行以重置序列。"
107303081,1403751,Golang WithCancel 深入解析,"['Golang', '上下文管理', '并发编程']
最低0.47元/天 解锁文章
1879

被折叠的 条评论
为什么被折叠?



