首页 > 解决方案 > 插入新行后事件无法正常工作

问题描述

我创建了一个事件,该事件从表 Loan 中插入值,其中成员尚未在表 NotYetReturned 中返回到期的书籍。它确实将成员存储在表 NotYetReturned 中,但是,当我在表 Loan 中插入一个新行,其中一个成员的图书过期时,它不会记录在表 NotYetReturned 中。

贷款表

CREATE TABLE NotYetReturned LIKE Loan # First, create a table with the columns of Loan
SET GLOBAL event_scheduler = ON;    

CREATE EVENT DueDate_expired                    
ON SCHEDULE EVERY 1 SECOND          
DO INSERT INTO NotYetReturned SELECT * FROM Loan 
WHERE CURDATE() > DueDate and ReturnDate is NULL;

SELECT * FROM NotYetReturned;  # Check who hasn't returned their books yet

这是对的

INSERT Loan VALUE
('552-55-94354-34-4','301099-4448','25764510', '2019-01-01', NULL, '2019-02-01');

SELECT * FROM NotYetReturned; # The table doesn't contain the new insertion.

这是不正确的

应包括新行。

标签: mysqlsql

解决方案


推荐阅读