無法找到它的問題,現在一直在努力了,而我該如何解決這個MySQL觸發器語句?
CREATE
TRIGGER `checkin_enforcement` BEFORE INSERT
ON `booking`
FOR EACH ROW BEGIN
IF (NEW.checkinDate < NEW.checkoutDate) THEN
INSERT INTO booking (bookingID, hotelNo, guestNo, checkinDate, checkoutDate, roomNo) VALUES (NEW.bookingID, NEW.hotelNo, NEW.guestNo, NEW.checkinDate, NEW.checkoutDate, NEW.roomNo);
ELSE
signal sqlstate '45000' set message_text = 'The checkin date must be less than the checkout date!';
END IF;
END$$
#1064 - 你在你的SQL語法錯誤;請檢查與您的MySQL服務器版本對應的手冊,以便在第7行「'附近使用正確的語法。
這會不會創建一個循環?在插入行之前 - 觸發器調用 - 它插入一行 - 再次調用觸發器 - 依此類推。 – GurV
@GurV最有可能,但我不能到我可以測試它的舞臺大聲笑 – Josh