【发布时间】:2015-02-05 19:44:07
【问题描述】:
我希望在新插入时触发以修改值。场景如下。当向表中添加新条目时,如果 ObjectTypeID 介于 684 和 750 之间,则将质量值更新为 100。根据我目前所读到的内容,我相信这应该在插入之后完成,但我还是新手SQL和学习。到目前为止,我一直无法让它工作。
这是我目前的尝试:
CREATE TRIGGER `items_after_insert` AFTER INSERT ON `items` FOR EACH ROW
BEGIN
SET items.Quality = '100'
FROM items
WHERE items.ObjectTypeID > '653' AND items.ObjectTypeID < '751'
END
使用以下建议解决:
CREATE TRIGGER `items_before_insert` BEFORE INSERT ON `items` FOR EACH ROW BEGIN
IF NEW.ObjectTypeID > '653' AND NEW.ObjectTypeID <'751' THEN
SET NEW.Quality = '100';
END IF;
END
【问题讨论】:
-
创建触发器
items_after_insert后插入items每行开始设置 items.Quality = '100' FROM items WHERE items.ObjectTypeID > '653' AND items.ObjectTypeID
标签: triggers sql-insert