Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как создать таблицу, так чтобы если в течении 5 минут записей в неё не было она автоматически удалялась?
 
 автор: nihilist   (22.09.2006 в 17:41)   письмо автору
 
 

Народ помогите создать таблицу, так чтобы если в течении 5 минут записей в неё не было она автоматически удалялась

   
 
 автор: kaoz   (22.09.2006 в 17:52)   письмо автору
 
   для: nihilist   (22.09.2006 в 17:41)
 

Триггеры в MySQL 5.x или временные таблицы... Вам для какой цели?

   
 
 автор: nihilist   (22.09.2006 в 17:54)   письмо автору
 
   для: kaoz   (22.09.2006 в 17:52)
 

чат пытаюсь сделать...

ну так что триггеры.... я искал в гугле, нормальной документашки по ним нету(только менуал, а этого не достаточно), к тому-же я точно не знаю что на моём сервере за майэскюел стоит) и пологаю не 5-й

   
 
 автор: cheops   (22.09.2006 в 20:15)   письмо автору
 
   для: nihilist   (22.09.2006 в 17:54)
 

Триггер может и не подойти - он к событию привязывается, например,
CREATE TRIGGER delete_chat AFTER INSERT ON `chat`
FOR EACH ROW
BEGIN
  DELETE FROM `chat` WHERE datetime < NOW() - INTERVAL 5 MINITE;
END

Однако если вставки новых записей в таблицу производиться не будет, и триггер срабатывать не будет, можно воспользоваться планировщиком заданий, но он появился только в версии 5.1.

   
 
 автор: nihilist   (22.09.2006 в 22:07)   письмо автору
 
   для: cheops   (22.09.2006 в 20:15)
 

spasibo i za otvet

   
 
 автор: Unkind™   (22.09.2006 в 18:47)   письмо автору
 
   для: nihilist   (22.09.2006 в 17:41)
 

Хм...Мне кажется, что удаление таблицы при 5 минутах "молчания" не есть хорошо...:)
Может, вы хотели удалять старые записи в БД? Тогда к каждому сообщению добавляйте time(), например:


<?php
//Connection to database...
include("config.php");

//Допустим такой запрос...
$sql mysql_query("INSERT INTO `chat` SET `author` = 'Admin', `room` = 0, `time` = '".(time() + 300)."';");

//Удаление старых записей...
mysql_query("DELETE FROM `chat` WHERE `time` < '".time()."';");
?>


Естественно у таблицы добавьте тоже поле "time" с типом INT, скажем...

Хотя лучше сделать какую-нибудь проверку, что прошло 5 минут и можно делать чистку сообщений, чтобы каждый раз не выполнять этот SQL запрос...

   
 
 автор: nihilist   (22.09.2006 в 19:14)   письмо автору
 
   для: Unkind™   (22.09.2006 в 18:47)
 

да нет, у меня есть таблица room и если в ней отсутствуют люди в течении 5(к примеру) минут т.е. записи (или нет активности .... вообщем не важно) то она бы как нить сама по себе удалялась. Ну с временной таблицей ни как не выходит, а вот если кто поможит написать триггер или хотяб подскажит где найти внятную документашку по нему, то я буду очень рад))

   
 
 автор: Unkind™   (22.09.2006 в 19:18)   письмо автору
 
   для: nihilist   (22.09.2006 в 19:14)
 

Зачем? :))

   
 
 автор: nihilist   (22.09.2006 в 19:20)   письмо автору
 
   для: Unkind™   (22.09.2006 в 19:18)
 

ну как ,??!,?
..я же сказал....я бы был рад, обрадуйти меня))

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования