错误 1442:MySQL phpMyAdmin 中与触发器相关的错误
Error 1442: MySQL Error In phpMyAdmin related to triggers
我在一本书上创建了这个触发器table
CREATE TRIGGER tBookCopies AFTER INSERT ON books
FOR EACH ROW
BEGIN
UPDATE books
SET availableCopies=books.totalCopies
WHERE books.book_ID = NEW.book_ID;
END
触发器的目的是在插入完成后自动将可用副本的值设置为与总副本数相同。
当我在 table
上尝试插入查询时
MySQL 说:
#1442 - Can't update table 'books' in stored function/trigger because it is already used by statement which invoked this stored function/trigger
请问如何解决这个问题?
您无法更新 sama table 但将其更改为插入之前的触发器也有同样的效果
CREATE TRIGGER tBookCopies BEFORE INSERT ON books
FOR EACH ROW
BEGIN
SET NEw.availableCopies=NEW.totalCopies;
END
我在一本书上创建了这个触发器table
CREATE TRIGGER tBookCopies AFTER INSERT ON books
FOR EACH ROW
BEGIN
UPDATE books
SET availableCopies=books.totalCopies
WHERE books.book_ID = NEW.book_ID;
END
触发器的目的是在插入完成后自动将可用副本的值设置为与总副本数相同。 当我在 table
上尝试插入查询时MySQL 说:
#1442 - Can't update table 'books' in stored function/trigger because it is already used by statement which invoked this stored function/trigger
请问如何解决这个问题?
您无法更新 sama table 但将其更改为插入之前的触发器也有同样的效果
CREATE TRIGGER tBookCopies BEFORE INSERT ON books
FOR EACH ROW
BEGIN
SET NEw.availableCopies=NEW.totalCopies;
END