Oracle生成单据编号存储过程的实例代码
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,Oracle生成单据编号存储过程,在做订单类似的系统都可能会存在订单编号不重复,或是流水号按日,按年,按月进行重新编号。可以参考以下存储过程CREATE OR REPLACEprocedure Pro
千家信息网最后更新 2026年11月01日Oracle生成单据编号存储过程的实例代码
Oracle生成单据编号存储过程,在做订单类似的系统都可能会存在订单编号不重复,或是流水号按日,按年,按月进行重新编号。
可以参考以下存储过程
CREATE OR REPLACEprocedure Pro_GetBillNO(TypeTable in varchar2,cur_mycursor out sys_refcursor)asDReceiptCode varchar2(40);DReceiptName varchar2(50);DPrefix1 varchar2(50);DISO varchar2(50);DIsAutoCreate varchar2(20);DPrefix2 varchar2(20);DPrefix3 varchar2(20);DDateValue date;DNO number;DLength number;DResetType number;DSeparator varchar2(20);DReturnValue varchar2(50);strSql varchar2(1000);beginDReturnValue:='';select "ReceiptCode","ReceiptName","Prefix1","ISO","IsAutoCreate","Prefix2","Prefix3","DateValue","NO","Length","ResetType","Separator" intoDReceiptCode,DReceiptName,DPrefix1,DISO,DIsAutoCreate,DPrefix2,DPrefix3,DDateValue,DNO,DLength,DResetType,DSeparator from"SysReceiptConfig" where "ReceiptCode"=TypeTable;if to_number(DResetType)>0thenif DIsAutoCreate=1 THENif DResetType=1 then --按年份if to_number(to_char(sysdate,'yyyy')) <>to_number(to_char(DDateValue,'yyyy')) thenupdate "SysReceiptConfig" set "NO"=1,"DateValue"=to_date(sysdate) where "ReceiptCode"=TypeTable;elseupdate "SysReceiptConfig" set "NO"="NO"+1 where "ReceiptCode"=TypeTable;end if; --年份end if;--DResetType=1if DResetType=2 then --按月份if to_number(to_char(sysdate,'MM')) <>to_number(to_char(DDateValue,'MM')) thenupdate "SysReceiptConfig" set "NO"=1,"DateValue"=to_date(sysdate) where "ReceiptCode"=TypeTable;elseupdate "SysReceiptConfig" set "NO"="NO"+1 where "ReceiptCode"=TypeTable;end if; --月份end if;--DResetType=2if DResetType=3 then --按日if to_number(to_char(sysdate,'dd')) <>to_number(to_char(DDateValue,'dd')) thenupdate "SysReceiptConfig" set "NO"=1,"DateValue"=to_date(sysdate) where "ReceiptCode"=TypeTable;elseupdate "SysReceiptConfig" set "NO"="NO"+1 where "ReceiptCode"=TypeTable;end if; --月份end if;--DResetType=3elseupdate "SysReceiptConfig" set "NO"="NO"+1 where "ReceiptCode"=TypeTable;end if;--DResetTypeend if;strSql:=' select * from "SysReceiptConfig" where 1=1 ';strSql:=strSql ||' and "ReceiptCode"='''||TypeTable||'''';open cur_mycursor for strSql;end;
以上所述是小编给大家介绍的Oracle生成单据编号存储过程的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
过程
存储
月份
单据
生成
年份
订单
代码
实例
流水
流水号
疑问
系统
网站
参考
帮助
支持
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司怎么样
网络科技有限互联网
与互联网科技公司
万易互联网科技
互联网科技股票
鑫亿盛互联网科技
狮子座互联网科技有限公司
大白互联网科技
四个字互联网科技公司取名
厦门千工互联网科技有限公司
天津腾达互联网科技有限公司
华夏恒生科技与互联网科技
高科技互联网发展前景如何
互联网科技如何创业
山东有哪些互联网科技公司
广州富喜互联网络科技
领航科技大厦互联网公司
广州梦谷互联网科技有限公司领导
第三届互联网大会安防黑科技
宁波允成互联网科技有限公司
奇酷互联网络科技公司
亿账通互联网科技
科技类的互联网平台
卫星互联网科技股票
浙南科技城互联网大厦招聘
信承诺互联网科技有限公司
容联科技互联网电商
北京天晋互联网科技有限公司
数字科技和互联网金融哪个好
颐高云石互联网科技