0

说我有下表

//table user_update
update_id   |   userid   |   update_message   |   timestamp

有没有办法设置每个用户标识的最大条目数?我想让它在用户输入 5 个更新之后,之后输入的任何更新都会删除最旧的更新。我知道如何通过 PHP 做到这一点,只是好奇是否有任何方法可以通过 MySQL 做到这一点。

4

2 回答 2

1

这实际上是可能的。但如果你真的想做出这样的努力,那就值得怀疑了。

阅读一些关于“触发器”的内容。当满足某些条件时,您可以使用触发器来启动操作。这样,您可以触发对该表delete上的每个操作的操作。insert然后剩下的就是最多保留五个条目的条件。

于 2013-01-18T00:50:26.027 回答
1

我能想到做这个数据库端的唯一方法是TRIGGER在表上使用 a 。也许是这样的:

CREATE TRIGGER check_for_too_many_rows
AFTER INSERT ON User_Update
FOR EACH ROW BEGIN
   DO SOME LOGIC TO CHECK THE COUNT AND DELETE IF MORE THAN 5...
END;

以下是一些附加信息:

http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html

祝你好运。

于 2013-01-18T00:50:51.143 回答