mysql - 插入触发器之前的MYSQL:无法更新存储函数/触发器中的表,因为它已经在使用中
问题描述
我有一个我正在从表格中收集的记录。提交此表单后,我将使用触发器更新某些列。此栏不由用户提供。我在插入触发器之前使用过,就像我在搜索中建议的那样,我仍然得到同样的错误。这是我的触发器。
DELIMITER $$
CREATE TRIGGER `computeDetails` BEFORE INSERT ON `tbl_asset` FOR EACH ROW
BEGIN
DECLARE Price decimal;
DECLARE numberOfUnits bigint;
DECLARE total_purchase_price decimal;
SET Price = NEW.purchased_Price;
Set numberOfUnits = NEW.numberof_units;
Set totalprice = (Price * numberOfUnits);
set current_total_price = (totalprice * numberOfUnits);
Update tbl_asset set NEW.totalprice = totalprice, NEW.current_total_price
= current_total_price where id = NEW.id;
END
解决方案
推荐阅读
- java - 尝试从控制器返回 html 页面时找不到资源
- php - Cronjob wget 在不可预知的时间间隔内多次触发 http 请求
- gradle - Gradle 多模块 intellij 设置
- angular - 测试服务时如何模拟服务依赖关系?
- laravel - Laravel nova 使用 belongsTo 保存资源字段
- c# - 如何在正在运行的 Forms 应用程序中动态更改 WebBrowser 对象?
- errorprone - 如何从容易出错的情况中排除一个以上的路径?
- python - 如何从 Humminbird ChartSelect .bin 文件中获取数据
- java - 如何设置 JdbcUserDetailsManager 以使用我的表?
- r - 如何对数据框列表中的每个数据框进行分组和汇总