mysql触发器不支持本表操作?没有类似于ORACLE的pragma自治事务?

在进行ORACLE移植到MYSQL时,遇到mysql触发器不支持本表操作,没有类似于ORACLE的自治事务pragma autonomous_transaction。

需求:在表A中插入一条数据之前,先删除表A中满足条件的某条数据。

DROP TRIGGER IF EXISTS TR_REPAIR_HIS;
DELIMITER $$
CREATE TRIGGER TR_REPAIR_HIS
BEFORE INSERT ON T_EQU_REPAIR_HIS
-- REFERENCING OLD AS OLD NEW AS NEW
FOR EACH ROW
-- pragma autonomous_transaction;
begin
    declare v_count numeric;
	
    select count(*) into v_count from t_equ_repair_his where c_equid=NEW.c_equid and c_station_no=NEW.c_station_no and c_set_date=NEW.c_set_date;
    if (v_count > 0) then
    delete from t_equ_repair_his where c_equid=NEW.c_equid and c_station_no=NEW.c_station_no and c_set_date=NEW.c_set_date;
    -- commit;
    end if;
end$$
DELIMITER ;

以上触发器能在Mysql中创建成功,但使用时,若插入相同数据触发了该触发器,达不到先删除原数据再插入的目的,且报错。操作如图:

有没有解决办法。

REPLACE INTO