в одном запросе DELETE и UPDATE и коче что ещё...

[SDem]

Новичок
в одном запросе DELETE и UPDATE и кое что ещё...

Добрый день всем.
Суть проблемы вот в чём: есть таблица в мускуле где нумерация строк генерится не автоинкриментом а скриптом. Иногда из таблицы надо будет удалять строки, но в этом случае если например удолим строку с id=5 то во всех последующих необходимо заменить id=id-1. Я подумал, что генерить для апдейта каждой строки отдельный запрос будет слишком шикарно.Строк много и думаю выполнение такого кол-ва запросов изрядно нагрузит базу. Вот хочется сделать запрос который удалил бы строку а потом проапдейтил все строки от id+1 до последней строки. Идея вроде неплоха, но как реализовать вычисление новых ИД в запросе не знаю.
Может я вообще не должен этого хотеть? или есть способ?
 

Кром

Новичок
>Суть проблемы вот в чём: есть таблица в мускуле где нумерация строк генерится не автоинкриментом а скриптом.

Начнем с этого. Почему именно скриптом, а не самой базой?
 

[SDem]

Новичок
Автор оригинала: Кром
Начнем с этого. Почему именно скриптом, а не самой базой?
Дело в том что это не моя база, не мой сайт.А на этой фишке там у владельца что то завязано вобщем просил не трогать, иначе я и сам бы сделал автоинкриментом.Так что поменять это я не могу.Моя задача в том чтоб написать несколько функций с базой.Так то.
 

[SDem]

Новичок
Автор оригинала: Кром
Тогда пиши:
id = id-1 where id > [удаленный id]
Спасибо, отлично работает. Я просто не знал что можно обращаться к текущему id таким образом.Не нашел такой инфы. Спасибо!!!
 
Сверху