mysql обновление индекса на пхп - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB90.7493
BTC/USD70723.6856
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 18.06.2012, 22:08   #1
rusawm
Bitcoin to the moon!
 
Аватар для rusawm
 
Регистрация: 19.10.2008
Адрес: горный аул
Сообщений: 2,202
Бабло: $519970
По умолчанию mysql обновление индекса на пхп

вообщем есть база. там у каждого поля есть своя позиция. надо удалять одну запись и обновлять позиции чтобы они шли по порядку. это скрипт надо прогонять по всей базе обновляя индекс позиции или можно как то автоматом базу задать чтобы она сама это хуячала?
rusawm вне форума  
Старый 18.06.2012, 22:19   #2
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

А зачем тебе чтобы в базе обязательно было все по порядку без разрывов? Пусть будет:
Цитата:
1
2
4
5
9
23
24
25
27
29
и т.д.
А когда будешь забирать кудато, просто order by id, и там уже циклом номера по порядку присвоить.
Drunk Monk вне форума  
Старый 18.06.2012, 22:59   #3
rusawm
Bitcoin to the moon!
 
Аватар для rusawm
 
Регистрация: 19.10.2008
Адрес: горный аул
Сообщений: 2,202
Бабло: $519970
ТС -->
автор темы ТС По умолчанию

заебешься следить помоему. каждую позицию надо вверх, вниз двигать плюс допустим хочу 14 сделать 75, а там уже 74,75,76 и т.д. идет т.е. снова придется все update делать
rusawm вне форума  
Старый 18.06.2012, 23:02   #4
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

А, тебе еще потом двигать их надо. Тогда наверное индекс в отдельную таблицу выноси.
Drunk Monk вне форума  
Старый 18.06.2012, 23:59   #5
pesdexx
sysadm
 
Аватар для pesdexx
 
Регистрация: 28.12.2007
Сообщений: 588
Бабло: $101521
По умолчанию

а какой размер базы? и ещё вопрос - база или таблица?
pesdexx вне форума  
Старый 19.06.2012, 00:07   #6
rusawm
Bitcoin to the moon!
 
Аватар для rusawm
 
Регистрация: 19.10.2008
Адрес: горный аул
Сообщений: 2,202
Бабло: $519970
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от pesdexx Посмотреть сообщение
а какой размер базы? и ещё вопрос - база или таблица?
да херня думаю до 1000 строк, просто думаю как нормально сделать
rusawm вне форума  
Старый 19.06.2012, 00:13   #7
pesdexx
sysadm
 
Аватар для pesdexx
 
Регистрация: 28.12.2007
Сообщений: 588
Бабло: $101521
По умолчанию

Цитата:
Сообщение от rusawm Посмотреть сообщение
да херня думаю до 1000 строк, просто думаю как нормально сделать
1k это хуйня на нынешних серверах, если конечно не раз в пару секунд будет обновление(хотя и раз в секунду должно тянуть, на надо смотреть на конфиг мускуля).
можешь посмотреть в сторону триггеров для автоматизации, ну или

Цитата:
update where id > 554 set id = id + 1;
update zzz ... set id = 554;
ну и id периодически сворачивать до линейного без разброса
pesdexx вне форума  
Старый 19.06.2012, 00:21   #8
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

ну там как-то так тогда, если несколько тыщ

удаление
delete from table where id=6;
update table set id=id-1 where id>6;

добавление в средину списка
update table set id=id+1 where id>9;
insert into table set id=10;

перемещение элемента вверх
edit table set id=-1 where id=6;
edit table set id=6 where id=5;
edit table set id=5 where id=-1;

Ну и т.д, медскилз
Drunk Monk вне форума  
Старый 19.06.2012, 00:26   #9
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,224
Бабло: $247844971
По умолчанию

что-то я не догоняю зачем id обновлять
imgreen вне форума  
Старый 19.06.2012, 00:30   #10
oso
кодер
 
Аватар для oso
 
Регистрация: 21.01.2008
Сообщений: 315
Бабло: $69585
По умолчанию

может проще строкой хранить последовательность элементов
типа "1,2,3,4,5,6" и обновлять всего одно поле в бд.
Какие операции с бд в основном?
__________________
php скрипты от $25 Отзывы: 2013-2011, 2010, 2009. acя: 384 846 ноль два шесть
oso вне форума