这里我已经创建了我的触发器,它正在工作。如何在过程中调用该触发器。请提供解决方案。
下面是触发器
create or replace Trigger emp_trigger
Before update on Required_table
Begin
delete from log_table;
insert into log_table(employee_name,phone_number,company_name,location,currency)
(select employee_name,phone_number,company_name,location,currency
from Required_table);
end;
这是我的过程代码这里我想调用上面的触发器代码
create or replace procedure excercise_one
is
cursor test_cur is
select employee_details.emp_name,employee_details.emp_mobile_no,company.company_name,
location.area,currency.currency
from
employee_details, company, location, currency
where
employee_details.id = company.emp_no and
company.location = location.country and
location.location_id = currency.location;
ename employee_details.emp_name%type;
emp_mob Employee_Details.Emp_Mobile_No%type;
cname company.company_name%type;
l_area location.area%type;
cur currency.currency%type;
begin
open test_cur;
loop
fetch test_cur into ename,emp_mob,cname,l_area,cur;
if test_cur%Found Then
insert into Required_table values (ename,emp_mob,cname,l_area,cur);
else
exit;
end if;
end loop;
close test_cur;
end;
不能在存储过程中调用触发器。触发器自动运行,并在某些事件发生时执行或触发。
详情请点击以下链接https://www.oracletutorial.com/plsql-tutorial/oracle-trigger/
不能从存储过程调用触发器。但是可以从触发器调用存储过程。
您的触发器仅在更新时触发!
解决你的问题。写一个过程来操作你的日志表。因此,您可以从Procedure或Trigger调用list。
有限公司Ingo