【问题标题】:Trigger not running触发器未运行
【发布时间】:2016-10-23 13:28:23
【问题描述】:

当 Inventory 表中的 Quantity 值有更新时,我正在触发一个触发器以将新行插入到表 Reorder 中。当数量更新为 8 时,Reorder 表上没有任何反应,也没有添加任何内容。谁能指出我的触发器出了什么问题?

CREATE TRIGGER reorder
         AFTER UPDATE OF Quantity
            ON Inventory
      FOR EACH ROW
          WHEN "NEW.Quantity" < 10
BEGIN
    INSERT INTO Reorder VALUES (
                            NEW.ProductID,
                            100
                        );
END;

Inventory 包含 StoreID、ProductID 和 Quantity 列,而 Reorder 包含 ProductID 和 Quantity 列。

【问题讨论】:

    标签: sqlite triggers


    【解决方案1】:

    "NEW.Quantity" 是一个字符串。

    双引号对于引用表名或列名是正确的,但既没有表名也没有名为NEW.Quantity 的列。

    如果你真的想要引号,请使用"NEW"."Quantity",但在这里,你根本不需要它们。

    【讨论】:

      猜你喜欢
      • 2020-12-24
      • 1970-01-01
      • 1970-01-01
      • 2019-11-23
      • 1970-01-01
      • 2018-10-07
      • 1970-01-01
      • 1970-01-01
      • 2011-01-23
      相关资源
      最近更新 更多