oracle 学号生成 用oracle存储过程教程

Oracle实验报告_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
暂无相关推荐文档
Oracle实验报告|
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢oracle生成编号(当前日期+4位流水号)自动增长,流水号的规则是:1月1号又从0001重新开始,每次递增1._百度知道
oracle生成编号(当前日期+4位流水号)自动增长,流水号的规则是:1月1号又从0001重新开始,每次递增1.
,0003,&#39。而且1号从0001开始 一次 然后又0002;
select seq_ --当前日期;
if nextseq&alter sequence seq_moduleno increment by &#39我做了一天了
流水号我是用序列生成的
:= '||nextseq.nextval into nextseq from dual.currval into curseq from dual.put_line(curseq);||
execute immediate ' -- 序列初始化:= '1000 then) into curdd from dual,现在关键就是每个月1号要从零开始.currval ialter sequence seq_moduleno increment by 1'
curseq number.nextval into nextseq from dual。;yyyyMMdd'
elsif nextseq&lt.put_line(curseq),;
curdd varchar(4); --保存流水号; --设置序列增长值为1。;return varchar2is
moduleno varchar2(50); then
dbms_output; --当前日期的日:=qianzhui ||curdate ||liushuihao,'
select seq_000'
elsif nextseq&--物料设计单编号
curdate varchar2(20);if curdd = ' -- 序列初始化;
liushuihao varchar(4);10 then
select seq_||(1-curseq);
select seq_ --下一个序列值;
select to_char(0'dd&#39.put_line(nextseq);--当前序列值begin
select to_char(
execute immediate '||) into curdate from dual:= &#39。代码如下create or replace function getmoduleno(qianzhui varchar2)
--参数是前缀;-- 获取当前日期;dbms_100 thendbms_01'00&#39
现在的主要问题是每个月序列 怎么让他只从0001 ,开始一次
提问者采纳
写个定时的脚本每月1号0点把序列号更新为1为什么用sequence呢,在你取号的方法中每取一个号,另外一个序号表放序列号更好啦
关键是定时的脚本不会写啊
??我的 qq:
可以私聊吗
解决了的话肯定会很感谢你 ,分肯定也少不了的
把序号更新为1的存储过程或语句会写吧?create or replace procedure proc_auto_exec_job as
DBMS_JOB.SUBMIT(
JOB =& job,
/*自动生成JOB_ID*/
WHAT =& 'proc_update_',
/*更新序号的存储过程或SQL语句*/
NEXT_DATE =& sysdate,
/*初次执行时间,立刻执行*/
INTERVAL =& 'TRUNC(LAST_DAY(SYSDATE ) + 1)'
/*每月1号0点执行*/
DBMS_JOB.RUN(job);
end proc_auto_exec_
begin proc_auto_exec_
提问者评价
我哪里用的是自定义的函数 ,不太对 ,不过用存储过程 用这种方法应该行
其他类似问题
流水号的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁oracle 学号生成 用存储过程_百度知道
oracle 学号生成 用存储过程
一张表里面
xh =byrq年份-3+zy+ccdm+“”
条件是要根据zy 来判断后面的序列号(比如zy是01
那么后面的序列号是
到02 序列号也是)
还有一个条件是 如果xh 有存在值
取最大后面+1
我要生成学号
xh =byrq年份-3+zy+ccdm+序列号条件一:不同的zy
后面四位的序列号要从0000开始条件二: xh这列 有一些有了值
如果这个zy有一部分XH了
要判断出对应’zy‘ 序列号最大值
如果这个专业对应的学号没有一个值
那么序列号从麻烦 会的人解答一下
你想问什么,你自己看看你描述的东西,你能看懂吗?把问题描述清楚大家才能帮你解决啊
我要生成学号
xh =byrq年份-3+zy+ccdm+序列号条件一:不同的zy
后面四位的序列号要从0000开始条件二: xh这列 有一些有了值
如果这个zy有一部分XH了
要判断出对应’zy‘ 序列号最大值
如果这个专业对应的学号没有一个值
那么序列号从
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Oracle--biancheng
设有学生表student(学号sno, 姓名sname, 年龄 sage,系别dept)、课程表Course( 号
182万源代码下载-
&文件名称: Oracle--biancheng
& & & & &&]
&&所属分类:
&&开发工具: Objective-C
&&文件大小: 7 KB
&&上传时间:
&&下载次数: 6
&&提 供 者:
&详细说明: 设有学生表student(学号sno, 姓名sname, 年龄 sage,系别dept)、课程表Course(课程号cno,课程名称cname)和选课表sc(学号sno,课程号cno,成绩grade),用Oracle PL/SQL语言设计一个名为pkg_student程序包,要求:
(1)写出程序包头和包体的定义,其中包含函数avgGradePerCourse和存储过程printAvgGradeCourse。
(2)函数avgGradePerCourse计算某门课程的平均成绩,必须用PL/SQL表(索引表)实现。
(3)存储过程printAvgGradeCourse打印输出某个系每门课程的平均成绩,必须使用游标。
(4)调用pkg_student程序包中相应的函数或存储过程-Have student table student (Student ID sno, name sname, age, sage, University Department dept), curriculum Course (course number cno, course name cname) and enrollment form sc (Student ID sno, course number cno, performance grade), using Oracle PL/SQL language to design a package called pkg_student require: (1) Write program header and the definition of inclusion, which contains functions and stored procedures avgGradePerCourse printAvgGradeCourse. (2) function avgGradePerCourse calculate a course grade point average, must be PL/SQL table (index table) implementation. (3) print out a stored procedure printAvgGradeCourse Department of average scores for each course, you must use cursors. (4) call pkg_student package corresponding function or stored procedure
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&Oracle--biancheng.doc
&近期下载过的用户:
&输入关键字,在本站182万海量源码库中尽情搜索:
&[] - VC++数据库代码,数据类型为Oracle,实现了数据库的增删改查的功能
&[] - 这是一个关于oracle里面的存储过程,游标,事务等的资料,适合于初学者
&[] - 一个数据库成绩管理设计的全过程及论文,里面有全部代码,思路清晰
&[] - VC数据库编程实例-ORACLE数据库VC数据库编程实例
&[] - 用DELPHI编写的可以连接ORACLE数据库的一个简单实例

我要回帖

更多关于 oracle的存储过程 的文章

 

随机推荐