我在mySQL数据库中使用了太多触发器吗?

时间:2017-06-06 15:19:01

标签: mysql database triggers

我的数据库中有一个问题,客户端会在网站上更新他们的信息,更新会覆盖他们在数据库中的原始信息。要记录客户端以前的信息,以及何时将其更新为“新”信息,我已经为特定数据库创建了一个触发器。 例如:

CREATE TRIGGER clientstatustrigger AFTER UPDATE ON clientstatus
FOR EACH ROW
BEGIN
INSERT INTO clientstatusrecord SET id = NEW.id, oldstatus = OLD.status, newstatus = NEW.status, timechanged = NOW();
END;

到目前为止它确实很棒!但是,我需要为很多表实现这种技术。我将为我需要跟踪其中的更改的每个表创建一个“记录”表,并为这些表创建一个触发器。我的问题是,这个触发器太多了吗?我将来会看到劣势吗?我理解触发器很难调试,因为人们忘了他们在那里,但我有理由改变这个系统吗?如果是这样,你推荐什么?

0 个答案:

没有答案