假设:存在视图A,包含字段有a_1,a_2,a_3等注释:Create a temporary table for holding the data执行:sql> create table B as select * from A where 1<>1实现:现在要建一 定时触发器或存储过程,把视图A的数据复制到表B高手帮忙!
解决方案 »
- 如何在Oracle中调用MSSQL的存储过程?
- oracle安装出现 "Oracle Database Configuration Assistant 失败'问题,详见内容
- 求助各位大鸟级别
- oracle11gr2 netca 无法启动 报错,各位大虾谁知道这是什么原因么
- OracleDBConsoleorcl启动不了
- 如何提取出错函数的记录
- v_$session 和 v$session 一样吗?
- 关于外部键的命名????????
- 数据库导入问题。为什么导不进去???
- 数据库有必要考证明,考哪些,看哪方面的书呢
- 请问,oracle中如何区分有序表和无序表?
- 请问如果做双机实时热备,用什么软件?有免费的吗?收费的价格又怎么样?
is
begin
insert into B
select * from A
where not exists (select * from B where A.? = B.?);
end test;触发器只有在表数据有变动时才能执行.你是视图A,不能用触发器
sys.dbms_job.submit(job => :job,
what => 'cp.s01;',
next_date => to_date('01-01-4000', 'dd-mm-yyyy'),
interval => 'SYSDATE + (600/(24*60*60))');
sys.dbms_job.broken(job => :job,
broken => true,
next_date => to_date('01-01-4000', 'dd-mm-yyyy'));
commit;
end;
10分钟一次,直到'01-01-4000'世界终结cp.s01过程
create or replace package body cp as procedure s01 is begin
insert into b a_1,a_2,a_3
select a_1,a_2,a_3 from view;
commit;
exception
when others then
rollback;
dbms_output.put_line(sqlerrm);
end s01;
end cp;