【求助】大家帮忙看看这个触发器,在触发器中记录当前时间
业务:
在插入一条数据时,将满足条件的数据转移至另一张表,并在import_time中记录系统当前时间
表1:
desc YTO_ORDERDETAIL_TABLE
名称 空值 类型
------------------------------ -------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
PRODUCTNO NOT NULL VARCHAR2(800)
PARTID VARCHAR2(800)
PARTNO NOT NULL VARCHAR2(800)
SUPPLIERNO VARCHAR2(800)
ORG VARCHAR2(800)
IMPORT_TIME TIMESTAMP(6)
当执行一条insert语句之前,将表中所有PRODUCTNO与当前插入的数据PRODUCTNO相同的记录转移至另一个结构完全相同的表中,同时,在import_time位置写入系统当前时间。
以下是触发器:
create or replace trigger TRG_YTO_ORDERDETAIL_TABLE_ROW
before insert on YTO_ORDERDETAIL_TABLE
for each row
begin
:new.import_time:=current_timestamp;
insert into YTO_ORDERDETAIL_HISTORY_TABLE select * from YTO_ORDERDETAIL_TABLE where PRODUCTNO=:new.PRODUCTNO ;
delete from YTO_ORDERDETAIL_TABLE where where PRODUCTNO=:new.PRODUCTNO ;
end TRG_YTO_ORDERDETAIL_TABLE_ROW;
以下是报错信息:
错误(4,1): PL/SQL: SQL Statement ignored
错误(4,41): PL/SQL: ORA-00936: 缺失表达式
由于本人对触发器并不了解,只是现学现卖。求助该触发器该如何修改才能正常编译使用