我是mysql数据库的新手。我有一张带有余额(萨尔多)的桌子。当我删除1行。我已删除的行下的运行余额(saldo)未更新。像下面这张照片。 running balance error
所以我用sql中的这段代码重新计算了运行余额(saldo):
set @Balance := 0;
update kastunai
set saldo = (@Balance := @Balance + kredit - debet) order by no_urut
这在sql中工作正常。但是我想将其放入“删除行后自动触发”,因此我不必在每次删除一行以更新运行余额(saldo)时手动运行它。也许还有一些PHP代码可以帮助您。
删除后我尝试触发,但出现错误消息:
*“以下查询失败:
CREATE TRIGGER `test` AFTER DELETE ON `kastunai`
FOR EACH ROW
set @Balance := 0
update kastunai a set a.saldo = (@Balance := @Balance +
a.kredit - a.debet)
order by a.no_urut
MySQL said: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'update kastunai a set a.saldo = (@Balance := @Balance + a.kredit - a.debet) ord' at line 2"
*