Авто удаляемая LibArea)
Я чуть чуть модернизировал базу данных)
В общем я взял из базы данных таблицу с постами, и создал для нее специальный триггер.
DELIMITER //
CREATE TRIGGER postsinserttrigger AFTER INSERT ON posts FOR EACH ROW BEGIN – Установить флаг, указывающий на наличие новых записей UPDATE postsstatus SET hasnew_records = 1; END//
DELIMITER ;
Далее создал дополнительную таблицу, которая будет хранить информацию о наличии новых записей в той таблице, за которой мы будем следить…
CREATE TABLE IF NOT EXISTS postsstatus (
hasnew_records TINYINT(1) NOT NULL DEFAULT 0
);
Затем создаем процедуру, которая будет проверять наличие новых записей и удалять таблицу «posts» при их отсутствии в течение 24 часов.
DELIMITER //
CREATE PROCEDURE deletepoststable() BEGIN DECLARE newrecordscount INT;
– Проверить наличие новых записей SELECT COUNT(*) INTO newrecordscount FROM postsstatus WHERE hasnew_records = 1;
IF newrecordscount = 0 THEN – Удалить таблицу «posts» DROP TABLE IF EXISTS posts;
– Удалить запись о статусе DELETE FROM posts_status; END IF; END//
DELIMITER ;
Ну и создаем задание в планировщике, который будет запускать эту процедуру.
CREATE EVENT IF NOT EXISTS delete_posts_event
ON SCHEDULE EVERY 24 HOUR
DO
CALL delete_posts_table();
Так что приглашаю спасать yryr.ru от гибели) Зайди раз в сутки и напиши привет! https://yryr.ru/
Сорян за ссылку, но я же как то должен продвинуть идею.
+ Сам сделал, сам сломал. Пытаюсь поправить)))
Это можно сказать хулиганство над базой :) Чё только люди не придумают. Вот сроду бы в голову не пришло это. )
А мне вот пришло) Но я отказался от этой идеи. Я попробовал. У меня получилось. А после вернул сделанный дамп)