всем привет. допустим, я хочу добавить сделать чат в реальном времени и хочу чтобы кол-во сообщений выводилось не более 100 штук. Вопрос в том, как сделать, чтобы в таблице chats, например, всегда было не более ста записей? ну например, в бд хранится 100 строк и тут кто-то пишет еще, и не должно получится, что в таблице оказалась 101 строка. (то есть, самое первое сообщение должна удалится).
у меня есть мысль при каждом insertе сообщения от пользователя делать еще один запрос к бд delete, кторый удаляет лишнее,строк более ста (delete......where limit > 100, как то как?)
1. Еугений - 26 Марта, 2012 - 12:44:51 - перейти к сообщению
2. DelphinPRO - 26 Марта, 2012 - 12:53:30 - перейти к сообщению
что ам мешает хранить все сообщения а выборку делать по последним ста?
3. Еугений - 26 Марта, 2012 - 12:54:53 - перейти к сообщению
DelphinPRO пишет:
что ам мешает хранить все сообщения а выборку делать по последним ста?
да просто чтоб бд не нагружать
4. DelphinPRO - 26 Марта, 2012 - 12:59:27 - перейти к сообщению
вы ее нагружаете лишними операциями.
а очистку можно по крону делать, раз в сутки, например. Хотя, не знаю, насколько это правильно.
а очистку можно по крону делать, раз в сутки, например. Хотя, не знаю, насколько это правильно.
5. EuGen - 26 Марта, 2012 - 13:08:35 - перейти к сообщению
Зачем вообще что-то удалять?
Почему не выбирать просто последние 100 строк?
Почему не выбирать просто последние 100 строк?
6. Еугений - 26 Марта, 2012 - 13:14:36 - перейти к сообщению
EuGen пишет:
Зачем вообще что-то удалять?
Почему не выбирать просто последние 100 строк?
Почему не выбирать просто последние 100 строк?
не ну а зачем мне лям записей, если показывать надо будет только 100
![Радость Радость](./im/emoticons/biggrin24.gif)
7. snikers987 - 26 Марта, 2012 - 13:18:50 - перейти к сообщению
Еугений пишет:
не ну а зачем мне лям записей, если показывать надо будет только 100![Радость Радость](./im/emoticons/biggrin24.gif)
EuGen пишет:
Зачем вообще что-то удалять?
Почему не выбирать просто последние 100 строк?
Почему не выбирать просто последние 100 строк?
не ну а зачем мне лям записей, если показывать надо будет только 100
![Радость Радость](./im/emoticons/biggrin24.gif)
Ну так поставьте задачу к примеру на cron и раз в час удаляйте все старое(по времени добавления) и оставляйте 100 последних постов..