У меня есть запрос запуска,нулевые значения Insering в запускающей таблице
create or replace trigger trg_upd
after update or delete or insert
on dept for each row
declare
--pragma autonomous_transaction;
begin
if inserting then
insert into deptemp values(:old.deptno,:old.dname,:old.loc);
elsif updating then
insert into deptemp values(:old.deptno,:old.dname,:old.loc);
else
insert into deptemp values(:old.deptno,:old.dname,:old.loc);
end if;
end trg_upd;
и создал стол
create table deptemp as(select * from dept where 1=2);
Когда я insering в таблице DEPT нулевых значения вставляют в таблице deptemp
insert into dept values(50,'OLTP','Hyd');
Выбрать * from deptemp;
DEPTNO DNAME LOC
------ -------------- -------------
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
50 OLTP Hyd
10 SALES CHICAGO
Почему значения, вставленные в таблицы депонирования, вставляются в качестве нулевых значений таблицы deptemp?
Поскольку вы используете «старые» значения, а для вставки не было «старых» значений, поэтому они равны нулю. Используйте «новое», если вы хотите новые значения. –