我有一个名为DEC字段的表,product_price我想添加一个名为的字段price_updated_date.有没有办法将表设置为每当product_price字段更新时自动插入当前时间戳?
如果没有,是否有办法将其设置为在条目完全更新时插入当前时间戳?
似乎使用触发器是这里的最佳选择.我是触发器的新手并且在创建它时遇到了一些麻烦.这是我的代码:
CREATE TRIGGER price_update
AFTER UPDATE ON cart_product
FOR EACH ROW
IF(OLD.product_price != NEW.product_price)
THEN
UPDATE cart_product
SET price_updated_date = CURDATE()
WHERE product_id = NEW.product_id
Run Code Online (Sandbox Code Playgroud)
这给了我这个错误:
#1064 - 您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第8行的''附近使用正确的语法
小智 14
为什么不将该字段的属性设置为:
DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP;
Run Code Online (Sandbox Code Playgroud)
Vad*_*yus 10
是的,在你的桌子上更新后创建触发器
CREATE TRIGGER price_update AFTER UPDATE on _table_ FOR EACH ROW UPDATE _table_ SET price_updated_date = CURTIME() where id=NEW.id
| 归档时间: |
|
| 查看次数: |
18250 次 |
| 最近记录: |