Oracle PL/SQL编程学习笔记:序列和自动编号
首先在PL/SQL中创建一个序列,右键单击Sequences节点,点击【新建】,弹出对话框。
对应的PL/SQL语句:
1 -- Create sequence 2 create sequence IN_OUT_SEQ 3 minvalue 0 4 maxvalue 9999999 5 start with 200 6 increment by 1 7 cache 20;
在存储过程中调用(黄色部分),这样就实现了字段的自动编号:
1 create or replace procedure SENDERINOUTREPORT_INSERT( 2 V_SENDER_ID in NVARCHAR2, 3 V_IN_BRANCH_ID in NVARCHAR2, 4 V_IN_REPORT_TIME in DATE, 5 V_IN_FLAG in NUMBER, 6 V_INDATE in DATE) is 7 v_num NUMBER:=0; 8 begin 9 select count(IN_OUT_ID) into v_num from SENDERINOUTREPORT 10 where SENDER_ID=V_SENDER_ID and INDATE =to_date(to_char(V_INDATE,'yyyy-mm-dd'),'yyyy-mm-dd'); 11 if (v_num=0) then 12 insert into SENDERINOUTREPORT(IN_OUT_ID,SENDER_ID,IN_BRANCH_ID,IN_REPORT_TIME, 13 IN_FLAG,INDATE) values(IN_OUT_SEQ.NEXTVAL,V_SENDER_ID,V_IN_BRANCH_ID,V_IN_REPORT_TIME, 14 V_IN_FLAG,to_date(to_char(V_INDATE,'yyyy-mm-dd'),'yyyy-mm-dd')); 15 end if; 16 end SENDERINOUTREPORT_INSERT;
作者:太一吾鱼水
文章未经说明均属原创,学习笔记可能有大段的引用,一般会注明参考文献。
欢迎大家留言交流,转载请注明出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程