2

我正在尝试cataloginventory_stock_item在 magento 数据库中的表上添加一个触发器,以修改具有 sku 字符串相同部分的所有产品的字段数量。

但是结果显示我一个 sql 语法错误。

触发器是:

CREATE TRIGGER UpdateQuantity AFTER UPDATE OF qty ON  `cataloginventory_stock_item`
    FOR EACH ROW BEGIN
    Update cataloginventory_stock_item AS csi
    JOIN catalog_product_entity AS cpe ON cpe.entity_id = csi.product_id
    JOIN catalog_product_entity_varchar AS cpev ON cpev.entity_id = cpe.entity_id
    SET csi.qty = NEW.qty
    WHERE cpev.store_id =2 and AND cpe.sku LIKE concat( '%', (SELECT SUBSTRING_INDEX(New.sku, '_', 1 ) FROM catalog_product_entity LIMIT 1 ) , '%');
    INSERT INTO logQty VALUES(NEW.qty, old.sku,NOW());
    END
4

1 回答 1

0

我使用您的触发器玩了一段时间并修复了一些语法问题,但似乎无法声明此触发器,因为 ecataloginventory_stock_item本质上没有 sku 字段,但您使用 Old 和一次使用 New 关键字引用它。

于 2012-11-12T18:05:26.473 回答