Я создал таблицу test1
, какудалить запись, прежде чем вставить новую запись в таблицу, используя триггер в MySQL
CREATE TABLE test1 (ID INT, имя VARCHAR (20)) ENGINE = InnoDB;
Теперь я хочу, чтобы delete
запись из этой таблицы перед inserting
новой записью, имеющей тот же идентификатор (то есть запись уже существующего с тем же идентификатором, а затем вставить новую запись). Я попробовал код ниже.
create trigger before_insert_test1 before insert
on test1
for each row
begin
delete from test1 where id=NEW.id;
end;
но он показывает ошибку ERROR 1442 (HY000): Невозможно обновить таблицу «test1» в хранимой функции/триггере, так как он уже используется заявлением, которое вызывается этот хранимая функция/триггер. Может кто-нибудь помочь. заранее спасибо
Ваш вопрос похож на этот один: http://stackoverflow.com/ Вопросы/15300673/mysql-error-cant-update-table-in-stored-function-trigger-because-it-is-is – valicu2000