gpt4 book ai didi

MySQL触发器根据另一个表的变化更新一个表

转载 作者:行者123 更新时间:2023-11-29 11:45:48 25 4
gpt4 key购买 nike

我已经为这个看似简单的任务工作了几个小时,但没有运气。

我有一个数据库测试,其中包含两个表:房间预订

room 中有一个名为 reserved_status 的列,其可能值为 0 和 1。room_id 是其主键。

在表reservation中,有room_id列,它引用表room中的room_id

基本上,我想创建一个触发器,每当表保留发生更改(例如插入、更新或删除)时,该触发器都会将reserved_status更新为1。

以下查询实际上在 phpMyAdmin 中被接受:

DELIMITER $$
CREATE TRIGGER reserved_status_insert AFTER
INSERT ON
reservation FOR EACH ROW
BEGIN
UPDATE
room
SET
room_reserved = 1
WHERE
room_id = NEW.reservation.room_id ;
END $$
DELIMITER ;

但是,当我尝试执行插入操作时,它给出了以下错误:

Unknown column 'NEW.reservation.room_id' in 'where clause'

希望有人能给我一个合适的解决方案,谢谢...

最佳答案

使用 NEW.room_id 而不是 NEW.reservation.room_id,因为 NEW 已经引用了 reservation 中的新行 表。

关于MySQL触发器根据另一个表的变化更新一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34978084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com