簡體   English   中英

設置MySQL表中每個用戶ID的最大條目數

[英]setting max number of entries per userid in MySQL table

說我有下表

//table user_update
update_id   |   userid   |   update_message   |   timestamp

有沒有一種方法可以設置每個用戶ID的最大條目數? 我要這樣做,以便在用戶鍵入說5個更新后,在此之后輸入的任何其他更新將刪除最早的更新。 我知道如何通過PHP做到這一點,只是好奇是否有辦法僅通過MySQL做到這一點。

這實際上是可能的。 但是,如果您真的想做出這樣的努力,那就值得懷疑。

閱讀一些有關“觸發器”的信息。 當滿足某些條件時,可以使用觸發器來啟動操作。 這樣,您可以對該表上的每個insert操作觸發delete操作。 那么剩下的就是最多保留五個條目的條件。

我可以想到的在數據庫側進行操作的唯一方法是在表上使用TRIGGER 也許是這樣的:

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

祝好運。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM