我正在制作一个网络平台,教师可以从中为学生分配任务。 每个任务至少包含一个或多个子任务。
Task_data
是一个将任务链接到每个学生的表格,可能包含每个学生在所述任务上的进度数据。
Sub_task_data
是一个将任务数据链接到每个子任务的表,可能包含每个学生在所述子任务上的进度数据。
我有以下表结构:
===================== =====================
| Task_data | | Sub_task_data |
===================== =====================
| (PK) id | | (PK) id |
| (FK) task_id | 1 ----- n | (FK) sub_task_id |
| (FK) member_id | | (FK) task_data_id |
| updated_on | | is_completed |
===================== =====================
表格members
,task
和subtask
没有说明,因为这里没有必要。
我想知道只要updated_on
表(带有相关的外键)中的一行更新,CURRENT_TIMESTAMP
行是否可以用Sub_task_data
自动更新?
感谢。
答案 0 :(得分:2)
你可以试试这个:
DELIMITER $$
CREATE TRIGGER update_time_taskdata
AFTER UPDATE ON Sub_task_data FOR EACH ROW
BEGIN
UPDATE Task_data
SET updated_on = NOW()
WHERE id = NEW.task_data_id;
END;
$$
DELIMITER ;
有关详细信息,请参阅CREATE TRIGGER手册。