存储过程(自动备份数据)

本文通过一个实例展示了如何使用Oracle存储过程进行数据库定时备份。详细解释了存储过程的作用,包括提高执行效率和复杂业务操作。文中创建了一个名为backpro的存储过程,用于备份tb_transaction表的数据,并通过dbms_job.submit设置定时器,每分钟执行一次备份。同时,还提供了各种定时执行的示例,如每日、每周、每月和每年定时备份。
摘要由CSDN通过智能技术生成

存储过程的作用:

1、(银行)将经常要执行的sql语句写成储存过程,储存在数据库中,可以提高执行效率。

2、储存过程的真正作用在于数据整合等复杂的业务操作。

3、在数据库开发领域中,存储过程是用作数据整合,数据接口,数据备份等操作。


功能:每天晚上12点备份银行交易记录明细表当日信息

思路:1.查询tb_transcation表的(当天)所有数据

            2.插入备份表tb_back

注意:1.将每天备份的最大id储存于第二天备份,为了演示储存过程的相互调用,最大的id会作为参数传递到当前程序

            2.每次commit执行io动作,非常消耗资源,尽量避免多次commit,一次commit需要处理“数据回滚段溢出”问题,使用“分段提交”解决问题

#########################################准备测试数据#########################################

--备份的银行表
CREATE TABLE tb_transaction(
ID INT NOT NULL,
ACCOUNT VARCHAR2(18) NOT NULL UNIQUE, --账号
amount NUMBER NOT NULL,               --金额 
currdate DATE,
CONSTRAINTS tb_transaction PRIMARY KEY(ID)
);

--银行表序列
CREATE SEQUENCE seq_tb_transaction; 

--插入银行表测试数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值