java 生成临时表 | 您所在的位置:网站首页 › 出轨男人的弱点在哪里 › java 生成临时表 |
这两天工作还行,工作的内容就是写存储过程,对于我这个没有写过存储近程的人来说,还是有一定困难的.不过还好,在众多资源的帮助下,万事OK呀,哈哈.下面就是我写的两个存储过程. 其一:对数据库中的原表进行每天的备份; 其二:通过对最新的备份表进行取值操作,通过判断,向原表中插入数据. 其实这两个存储过程也没有什么难的,一方面我是这方面的新手,另一方面要操作一个临时表,而且要从中取得数据(没有传入值),我在网上找了一下,没有什么成功的例子,所以,把我这两天的成果晒一下. 先说几个关键词(我用的时候,没少为这几个词费脑子) 1. execute Immediate,一个执行动态SQL的东东,在每天生成备份表时,立下了汉马功劳.我的表名为:原表名+yyyymmdd 2. creat table 表名 as select * from 已有表.这是一个创建表,我认为最快的一种方法,在创建表的同时,也可以直接把已有表中的数据也一起copy过来,呵呵,很是神奇 3. sys_refcursor,这是一个cursor,很怪异的一个cursor,能够生成动态的cursor,可以多用一些, 下面我写的存储过程,主要地业务逻辑去掉了,主要说一下过程 1. 每天生成表备份的存储过程 create or replace procedure P_HOLD_COPY Is --每天结算时,为当天的持股做备份 --得到表名为原表名+yyyymmdd的格式 table_name Varchar2(20) := 'test'||To_char(Sysdate,'yyyymmdd'); Begin execute Immediate 'Create Table '||table_name||' As Select * From T_STOC_HOL |
CopyRight 2018-2019 实验室设备网 版权所有 |