我正在开发一些用于计费的数据库项目(PHP / MySQL)。
每当创建新账单时,我想生成包含年,周和增量编号的账单编号。我想用触发器做这件事。触发器将使用现有的账单编号来查找增量编号,或者以新的一周和/或新年的第一个账单的新增量开始。
除了生成帐单号码,我可以执行BEFORE INSERT
触发器并将NEW.billnumber
设置为新生成的帐单号码。也可以执行AFTER INSERT
并使用生成的billnumber更新记录。
我的问题是我应该选择哪一个。 BEFORE INSERT
或AFTER INSERT
?我确实在搜索这个,但是在使用BEFORE或AFTER时我找不到好的论据。
答案 0 :(得分:2)
发现它只能用BEFORE INSERT
完成,因为MySQL不允许操纵触发AFTER INSERT
触发器的表。