gpt4 book ai didi

MySQL触发器在插入之前修改col

转载 作者:行者123 更新时间:2023-11-29 20:06:17 25 4
gpt4 key购买 nike

我想在插入记录之前修改col!我有交易表,对于每笔新交易,我想设置 0.5% 佣金。

问题是:他总是在 amount 列中插入 0。但我想要当前当前值 x 0.50%

DROP TRIGGER IF EXISTS `viptest`.`testing`;
DELIMITER $$

CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
TRIGGER `viptest`.`commission_before_insert` BEFORE INSERT
ON `viptest`.`transaction_history`
FOR EACH ROW
BEGIN
SET NEW.amount = NEW.amount % 0.50';
END$$

DELIMITER ;

最佳答案

试试这个

DROP TRIGGER IF EXISTS `viptest`.`testing`;
DELIMITER $$

CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
TRIGGER `viptest`.`commission_before_insert` BEFORE INSERT
ON `viptest`.`transaction_history`
FOR EACH ROW
BEGIN

-- If you just want to modify current row, this line should work
SET NEW.amount = NEW.amount * 0.5 / 100;

-- If you want to process this commission into another table, you can use this line
insert into db_name.table_name (col1, col2, col3)
select (val1, NEW.amount * 0.5 / 100, val3);

END$$

DELIMITER ;

关于MySQL触发器在插入之前修改col,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40336678/

25 4 0
文章推荐: javascript - 生成随机唯一数据花费的时间太长,占用 100% 的 CPU
文章推荐: Android HttpUrlConnection 简单网站连接
文章推荐: php - 错误; #1071 - 指定的 key 太长;最大 key 长度为 1000 字节
文章推荐: javascript - EmberJS 应用前端的多余
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com