管理大型資料庫涉及維護資料完整性和刪除過時的記錄以增強性能和效率。 MySQL 透過預存程序提供了一個優雅的解決方案,它允許根據指定的時間間隔計劃刪除行。
CREATE PROCEDURE delete_old_rows (table_name VARCHAR(255), days_old INT)
DELETE FROM table_name WHERE DATE(column_name) < DATE_SUB(NOW(), INTERVAL days_old DAY)
SET GLOBAL event_scheduler = ON;
CREATE EVENT delete_daily_rows ON SCHEDULE EVERY 1 DAY STARTS '2023-01-01 00:00:00' DO CALL delete_old_rows('table_name', 7); END;
要從 messages 表中刪除超過 7 天的行:
CALL delete_old_rows('messages', 7);
以上是如何使用預存程序在 MySQL 中自動刪除行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!