|
|
|
|
|
для: Valick
(03.04.2010 в 20:15)
| | я знаю. значение позиции будет не соответствовать | |
|
|
|
|
|
|
|
для: psychomc
(03.04.2010 в 18:25)
| | для редактирования в ссылку суют id строки | |
|
|
|
|
|
|
|
для: Valick
(03.04.2010 в 17:21)
| | нет. здесь нумерация на лету при выводе не идет, т.к при выборе этой записи, например для редактирования, значение этого поля будет не соответствовать значению, которое было при выводе в списке | |
|
|
|
|
|
|
|
для: psychomc
(03.04.2010 в 15:28)
| | я вас понимаю, это проще и в принципе никак не мешает функционалу. да, действительно хочу это делать только ради красоты. первичные ключи однозначно не понадобится, т.к они явно не видны.
иными словами вы хотите эти порядковые номера достать из базы и вывести рядом с чем-то?
и нафига спрашивается козе баян? когда подобного прода приблуды нумеруются "налету" при выводе в браузер. | |
|
|
|
|
|
|
|
для: Trianon
(03.04.2010 в 15:37)
| | спасибо , в общем-то всё предельно понятно :)
и отдельное спасибо за интересные мысли | |
|
|
|
|
|
|
|
для: psychomc
(03.04.2010 в 15:28)
| | я полагаю, что цеплять на эту непрерывность значений какой-либо функционал - порочно в принципе.
А если оная нужна лишь ради красоты, то нетрудно запустить раз в сутки скрипт, который пройдется по таблице и подчистит дырки. Вылизывать его (этот скрипт) до полного оптимума особого смысла нет, так как цель его вторична, а запускается он редко, и вследствие этого много каши все равно не съест.
PS. Хотя с помощью условной операции CASE наверное и возможно составить выражение кусочно-линейного преобразования, которое выкинет дырки за один запрос. Исключительно фарсу ради.
PPS. вот такой он мой взгляд, точнее голос - чисто совещательный. | |
|
|
|
|
|
|
|
для: Trianon
(03.04.2010 в 14:30)
| | я вас понимаю, это проще и в принципе никак не мешает функционалу. да, действительно хочу это делать только ради красоты. первичные ключи однозначно не понадобится, т.к они явно не видны.
тогда ответьте пожалуйста на один вопрос
вот на ваш взгляд: 1) мой подход ненужный и нерациональный, чтобы заморачиваться и искать какие-то оптимальные решения или 2) имеет право на жизнь
? | |
|
|
|
|
|
|
|
для: psychomc
(03.04.2010 в 13:36)
| | аргументы?
"Красиво выглядит" - не аргумент.
Поверьте, я на этом нажигался.
У Вас, конечно, случай не такой вопиющий.
Но лиха беда начало. Но следующий шаг - ради фальшивой красоты захочется первичные ключи без дырок держать - а тут уже просто хоть караул кричи. | |
|
|
|
|
|
|
|
для: Trianon
(02.04.2010 в 18:23)
| | не хочется чтобы дырки возникли... хочется чтобы они все шли подряд | |
|
|
|
|
|
|
|
для: oliss
(02.04.2010 в 18:09)
| | я просто вижу решение как-то так:
1) найти минимальную позицию из всех удаленных записей min(pos)
2) извлечь все id записей, у которых pos>min(pos), отсортировав их ORDER BY pos ASC
3) обновить извлеченные записи в цикле (min(pos)++), на каждую запись по запросу
оно то будет работать. но мне не нравится то, что количество запросов зависит от количества записей, и если записей скажем 3000, то и запросов на обновление может быть столько же (в зависимости от того, как высоко находится минимальная удаляемая запись). в общем-то пробовал обновлять и 50000 записей таким же способом, отрабатывает меньше чем за секунду.
но может есть более грамотное решение проблемы? спасибо за участие в теме | |
|
|
|
|