create or replace trigger tr_before_insert_employee
after insert
on t_employees
for each row
begin
:new.work_years :=0;
end;
执行插入语句
insert into t_employees values(employee_seq_nextval,'小龙女',6,'ACT');
把after改成before
create or replace trigger tr_before_insert_employee
before insert
on t_employees
for each row
begin
:new.work_years :=0;
end;
执行插入语句
insert into t_employees values(employee_seq_nextval,'大龙女',6,'ACT');这两种模式有什么相同点和不同点呀。
从结果上看,没有什么不同,最后的插入的6都被改成了0
请求指点,谢谢!
解决方案 »
- 我安装了oracle 9i怎么没有SQL*Net Easy Configuration组件
- 存储过程执行太慢,求高手解答
- oracle存储过程java source返回一个list集合
- 一个delete可以删除2个表的数据吗
- 数据库怎么实现组合索引呢?
- ORCLE10G 应用程序插入数据失败
- 下面的在sql server底下的存储过程,怎么在oracle中实现
- 怎么删除oracle中的所有表
- 我的ORACLE连不上了,各位大虾帮帮忙,急急急!!!!!!!!!!!
- home/oracle/app/oradata/orcl/下的文件是什么文件,可以删除吗?
- oracle数据库备份问题?谢谢
- 一条查询的存储过程
AFTER 先插入,后更改--------如果不能插入,值不会被更改
after insert
on t_employees
for each row
begin
:new.work_years :=0;
end;这个你能编译过去???
已经insert进去了你就修改不了:new的值了
你的触发器可以成功? 一没用自治事务 --这样才行
create or replace trigger tr_before_insert_employee
before insert or update of work_years on t_employees for each row
begin
:new.work_years :=0;
end;
before insert or update of work_years on t_employees for each row
begin
:new.work_years :=0;
end;