Форум о заработке в интернете - Показать сообщение отдельно - Пропущенные строки в MySQL
Показать сообщение отдельно
Старый 09.08.2010, 01:17   #2
Senator2
Мастер
 
Аватар для Senator2
 
Регистрация: 06.08.2010
Адрес: Украина, Киев
Сообщений: 742
0 | 0
0 | 0
По умолчанию

Даниэла Крис, если я правильно понял суть вопроса - то скорее всего - так сделать у Вас не получится...
Попытаюсь объяснить почему ...
Причина №1.
Предположим идет обычная работа форума - т.е. сообщения добавляются в базу как положено, ежеминутно (ежесекундно, и т.д. - зависит от раскрученности форума)...
Когда Вы решились удалить из базы какие-то сообщения - Вы ведь будете удалять не с какого-то момента и до конца ? Вы ведь будете удалять какие-то сообщения выборочно, ну или за какой-то период времени (старые сообщения, например).. А новые сообщения (последние которые были добавлены) они ведь останутся, и останутся со своими ID... И дальнейшая нумерация сообщений продолжится с этого места...
И это правильно...
Причина №2
В базе сообщений это поле (уникальный код сообщения - ID) скорее всего сделано автоинкрементным - т.е. СУБД сама нумерует все добавляемые строки в базу и следит за тем, чтобы они (номера строк) были уникальными...
Можно было бы конечно сделать это поле не автоинкрементным - но тогда пришлось бы городить не простенький механизм вычисления следующего номера для вновь добавляемого сообщения и каждый раз следить чтобы этот номер больше никогда не повторился...
Это дало бы неслабую нагрузку на базу при добавлении каждого сообщения...

Для решения Вашей задачи Вам нужно сделать запрос к базе сообщений, который выберет 100000-ое сообщение... Не сообщение с ID = 100000, а именно 100000-ое сообщение из базы, отсортированной по дате сообщений.
Senator2 вне форума   Ответить с цитированием