product_price_log テーブルがあります。product_price テーブルで新しい価格が更新された場所を更新しました。
私はトリガーを使用しています:
drop trigger if exists product_update;
delimiter $$
CREATE TRIGGER product_update
BEFORE update ON w3xab_virtuemart_product_prices
FOR EACH ROW
BEGIN
DECLARE virtuemart_product_id int;
DECLARE old_product_price decimal(15,5) default 0;
DECLARE new_product_price decimal(15,5) default 0;
DECLARE price_update_date DATE;
IF (new.product_price <> old.product_price)
THEN
INSERT into product_price_log
(virtuemart_product_id,old_product_price, new_product_price, price_update_date)
VALUES (new.virtuemart_product_id, old.product_price, new.product_price, CURDATE())
ON DUPLICATE KEY UPDATE
old_product_price = VALUES(old.product_price),
new_product_price = VALUES(new.product_price),
price_update_date = CURDATE();
END IF;
END$$
delimiter ;
今はエラーはありません..しかし、価格を更新しようとすると更新が機能しません...挿入のみが機能しています
私はrightmart_product_idをプライマリキーに設定しました。何が起こっているのかわかりません。この時点で完全に立ち往生しています...なぜ更新しないのか理解できません..