Oracle生成单据编号存储过程的实例代码
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,Oracle生成单据编号存储过程,在做订单类似的系统都可能会存在订单编号不重复,或是流水号按日,按年,按月进行重新编号。可以参考以下存储过程CREATE OR REPLACEprocedure Pro
千家信息网最后更新 2025年11月13日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安全错误
数据库的锁怎样保障安全
流媒体服务器 用户管理
中国网络安全的人数
国内网络技术交易平台
服务器软件开发是啥玩意
江西兴趣少儿编程软件开发
怀旧服新服务器分配
四级数据库工程师教材
高中生网络安全演讲稿800
网络技术专业入门书籍推荐
华硕h61 服务器内存
rppa数据库
数据库主键和外键约束设置
pubg南美服务器排行榜
数据库中流水号怎么编
软件开发算物资吗
马来西亚软件开发招聘信息
软件开发毕业报告
河北省网络安全宣传视频
某公司的网络安全需求分析
网络安全信息管理小组组长
计算机网络技术搭建局域网
windows10服务器设置
xlsx怎么查重复数据库
网络安全网站男人爱你的
阿里云服务器挂千牛访问受限
网络技术网络的功能和构造视频
点火测试软件开发
创建已存在的数据库会出现什么
网络安全靠人民文
服务器开启监听使用的方法