oracle通过存储过程调用定时任务 将查询出来的数据 插入另一个表
时间: 2024-05-14 22:14:18 浏览: 97
oracle的定时任务
可以按照以下步骤实现:
1. 创建一个存储过程,用于查询数据并将其插入另一个表中。
```
CREATE OR REPLACE PROCEDURE insert_data AS
BEGIN
INSERT INTO new_table (column1, column2, column3)
SELECT column1, column2, column3
FROM old_table
WHERE condition = true;
COMMIT;
END;
```
2. 创建一个定时任务,用于定期调用存储过程。
```
BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'insert_data_job',
job_type => 'STORED_PROCEDURE',
job_action => 'insert_data',
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY;BYHOUR=0;BYMINUTE=0;BYSECOND=0;',
end_date => NULL,
enabled => TRUE,
comments => 'Insert data from old_table to new_table'
);
END;
```
这将创建一个每天零点执行一次的定时任务,调用存储过程insert_data,并将其插入new_table中。
阅读全文