Общие > Базы данных
Удаление строки с автоинкрементом
(1/1)
fedechka:
Вступление:
В качестве самообучения делается гостевая на РНР с кучей всяких возможностей типа статусов, администраторов, уровней, всяких фигней и тому подобного.
Заводится таблица мессаг.
В первой таблице есть поле id, которое, собсно, автоинкремент.
Каким боком при удалении сообщения сделать так, чтоб енти самые id, которые после удаленного сообщения, на единицу б уменьшались?
Можно не уменьшать, но тады на одной странице будет, допустим, не 20, а 19 месссаг, что не есьм гуд.
А если уменьшить их как-то, то возникает другой вопрос. Заводится таблица комментов к сообщениям, хде существует parent_id, равный соответствующему id в первой таблице. Так что омменты тоже будут сдвигаться...
Вопрос, думаю, из серии FAQ, но пока ни в одном факе я его не нашел.
Ай нид самбади\'з хелп...
Макс:
--- Цитировать ---Можно не уменьшать, но тады на одной странице будет, допустим, не 20, а 19 месссаг, что не есьм гуд.
--- Конец цитаты ---
Ты их через LIMIT выводишь?
SELECT ... FROM cool_guestbook LIMIT $start, $rows_per_page;
$start, $rows_per_page; - какие-то числа.
тогда забей на изменение ID. Оно не нужно. Будут выводиться по $rows_per_page штук
Доктор:
update table set id=id-1 where id>$id;
Доктор:
Но это не совсем решение проблемы :) Потому что записи новые вставляться будут все равно со смещением.
fedechka:
2 Макс
Ну, как я и говорил, вопрос из серии FAQ.
Всё прояснилось, спасибо.
Навигация
Перейти к полной версии