我有一张表格,用于跟踪有多少员工被分配到特定的班次。每次将用户分配到一个班次时,触发器都会通过将列号加1来更新表格。 (这是由于性能问题)针对不同事件的相同触发器
触发器在插入后触发。但我也需要它来触发当用户被删除。我真的不想使用两个基本相同的触发器。
无论如何不使用程序来实现这一点?
我有一张表格,用于跟踪有多少员工被分配到特定的班次。每次将用户分配到一个班次时,触发器都会通过将列号加1来更新表格。 (这是由于性能问题)针对不同事件的相同触发器
触发器在插入后触发。但我也需要它来触发当用户被删除。我真的不想使用两个基本相同的触发器。
无论如何不使用程序来实现这一点?
不,你不能实现那是你不想使用存储过程和两个触发器。在MySQL中,触发器可以只附着一个trigger_time & trigger_event - 因为它是defined这样的方式:
trigger_time: { BEFORE | AFTER }
trigger_event: { INSERT | UPDATE | DELETE }
因此,在任何情况下,你需要有两个触发器,而且,如果你不想在其中重复一些代码,你必须使用存储过程。既然你不想使用存储过程,我相信你的问题没有可接受的解决方案。
男人我讨厌这个。什么样的老派技术是这样的 - 通过定义2个事件的触发器,问题出在哪里。我认为我需要使用一个程序。 2触发器都称为相同的功能,如果我在程序中这样做,我的教授会杀了我...... – mercsen
触发器与一个表和一个特定的事件(插入,更新,删除)相关联。 你有两个动作:AFTER INSERT和AFTER DELETE,所以你需要两个触发器。
使用一个程序为不同的trigers。 –