gpt4 book ai didi

mysql - 尝试创建一个触发器来更新一个表中另一个表的数量

转载 作者:行者123 更新时间:2023-11-29 21:55:10 25 4
gpt4 key购买 nike

我有两张表,用于显示正在销售的产品。一张是实际产品的表格,另一张是订购商品的表格。

订购商品表记录商品 ID 和销售数量。

我想创建一个触发器,从订购的商品表中获取数据并更新产品表数量,该列称为QuantityInStock。

这是我编写的触发器,但我不断收到错误:

delimiter $$

create trigger stockUpdate
after insert on orderItem
for each row
begin
update item(quantityInStock)
set quantityInStock = quantityInStock - orderItem.quantity
where itemId = orderItem.itemId;
end$$

我的错误消息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(quantityInStock) set quantityInStock = quantityInStock - orderItem.quantity w' at line 5

最佳答案

检查您的更新语法。

update table_name
set column_name = ...
where column_name = ...;

您可以分别使用 old.column_namenew.column_name 引用上一个/新行值。

需要考虑的一些事情:

如何防止数量变为负数

关于mysql - 尝试创建一个触发器来更新一个表中另一个表的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33219412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com