我有一个MySQL表,我正在更新.我想触发器获取更新的行ID,以便用它做一些工作.我该怎么做?我可以在SQL Server中执行此操作,但我是MySQL新手,无法在线查找任何内容.
更新中...
所以我不能分享代码,但这基本上是我想要的.
Table:
**id** **product** **price**
1, Coke, 2.05 USD
2, Sprite, 2.00 USD
3, 7Up, 2.10 USD
Run Code Online (Sandbox Code Playgroud)
我想将id 2,"Sprite"价格更新为2.50美元.现在我将正常执行此操作,但我需要运行一个将更新Audit表的Trigger.Audit表将需要注册产品的ID.所以基本上我需要知道更新行的id是2 ...
在sql中有什么类似的东西吗?
您可以参考id使用其中任何一列NEW.id或者OLD.id只要id列将不会改变.
一般来说,使用别名,NEW您可以获取更新列的当前值,并OLD获取该列在执行更新之前所具有的值.
CREATE TRIGGER au_product_table
AFTER UPDATE ON product_table
FOR EACH ROW
UPDATE audit
SET product_id = NEW.id
WHERE your_condition;
Run Code Online (Sandbox Code Playgroud)