mySQL-通过添加和减去字段以及捕获时间戳来更新数量字段?怎么用?
我有一张桌子: 我首先在纸箱中创建一个新记录,在“零件号”和“数量”中插入当前值 接下来,我需要使用另外两列进行添加和提取,从“数量”中添加或提取(减去) 如何使“数量”显示添加和拉出的纸箱的最新结果 我还需要给每个新的、添加的和拉取的文件加上时间戳mySQL-通过添加和减去字段以及捕获时间戳来更新数量字段?怎么用?,mysql,Mysql,我有一张桌子: 我首先在纸箱中创建一个新记录,在“零件号”和“数量”中插入当前值 接下来,我需要使用另外两列进行添加和提取,从“数量”中添加或提取(减去) 如何使“数量”显示添加和拉出的纸箱的最新结果 我还需要给每个新的、添加的和拉取的文件加上时间戳 TABLE NAME: cartons_current +------------+--------------+--------+--------+-------------------+------------+ | Column
TABLE NAME: cartons_current
+------------+--------------+--------+--------+-------------------+------------+
| Column | Type | Null | Key | Default | Extra |
+------------+--------------+--------+--------+-------------------+------------+
| part_no | varchar(20) | No | Prim | | |
+------------+--------------+--------+--------+-------------------+------------+
| qty | int(8) | No | | | |
+------------+--------------+--------+--------+-------------------+------------+
| qty_time | timestamp | No | | CURRENT_TIMESTAMP | |
+------------+--------------+--------+--------+-------------------+------------+
| add_qty | int(8) | No | | | |
+------------+--------------+--------+--------+-------------------+------------+
| add_time | timestamp | No | | CURRENT_TIMESTAMP | |
+------------+--------------+--------+--------+-------------------+------------+
| pull_qty | int(8) | No | | | |
+------------+--------------+--------+--------+-------------------+------------+
| pull_time | timestamp | No | | CURRENT_TIMESTAMP | |
+------------+--------------+--------+--------+-------------------+------------+
在更新之前的
触发器中,您可以更改值,这样您就可以在这些触发器中执行时间戳魔术,您可以存储最后一次更改
DELIMITER $$
CREATE TRIGGER ai_cartons_each BEFORE UPDATE ON cartons
FOR EACH ROW
BEGIN
IF new.qty_added <> old.qty_added THEN
SET new.added_timestamp = NOW();
END IF;
END $$
DELIMITER ;
分隔符$$
在更新纸盒之前,创建触发器ai_纸盒
每行
开始
如果添加了新数量,则添加了旧数量
设置new.added_timestamp=NOW();
如果结束;
结束$$
定界符;
另请参见对其他问题的回答: