Tôi muốn xóa một số thư khỏi cơ sở dữ liệu MySQL của mình sau 7 ngày.Cách xóa bản ghi MySQL sau một thời gian nhất định
Hàng trong bảng tin của tôi có định dạng sau: id | tin nhắn | ngày
Ngày là dấu thời gian ở định dạng thông thường; 2012-12-29 17:14:53
Tôi đã nghĩ rằng một sự kiện MySQL sẽ là con đường để đi thay vì một công việc cron.
Tôi có những gì tôi đoán là một câu hỏi đơn giản cho một người có kinh nghiệm SQL, làm thế nào để tôi mã phần xóa tin nhắn trong dấu ngoặc vuông dưới đây?
Ví dụ sẽ được đánh giá cao, Cảm ơn.
DELIMITER $$
CREATE EVENT delete_event
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
DO
BEGIN
DELETE messages WHERE date >= (the current date - 7 days);
END;
$$;
Cảm ơn bạn đã nhập vào Jordan, vấn đề tôi gặp phải là không có gì về kịch bản Cron. Nhưng tôi nhận ra rằng Sự kiện chạy trên một chuỗi MySQL có thể là một bất lợi nhỏ – Mike