Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как сделать автозаполнение в обратном порядке?
 
 автор: valera380   (11.09.2008 в 13:09)   письмо автору
 
 

создаю поле в базе, INT, auto_incriment.
есть два недовольствия:
1-при удалении записи, например №3, следующее значение всё равно создаётся после последнего (есле было 44, то следующее 45 будет) а хочеться что б при освободившемся №3 на его место встала новая запись.
2-заполнять хочется в обратном порядке. например от 999 и в сторону уменьшения.

ну помогите пожалуйста, не могу найти ни в каком учебнике как сделать.

  Ответить  
 
 автор: Mehelson   (11.09.2008 в 13:32)   письмо автору
 
   для: valera380   (11.09.2008 в 13:09)
 

2.Инкремент - операция увеличения на некоторую фиксированную величину.
для чего это Вам нужно? для того чтобы результат выбора был в обратном порядке? ORDER BY field DESC
1. Ну скажем это идентификатор записи для сугубо внутреннего пользования... его трогать не нать!
PS. Trianon расстроится :) уж сколько он тут уже про это объяснял...

  Ответить  
 
 автор: cheops   (11.09.2008 в 14:52)   письмо автору
 
   для: valera380   (11.09.2008 в 13:09)
 

1. Да, все верно. Зачем требуется неразрывное следование индекса? Если требуется нумерация, лучше воспользоваться либо отдельным полем, либо автоматической генерацией номеров в клиентском коде.
2. Для уменьшения номеров следует изменить значение системной переменной auto_increment_increment с 1 на -1, а значение системной переменной auto_increment_offset на 999.

  Ответить  
 
 автор: valera380   (11.09.2008 в 15:25)   письмо автору
 
   для: cheops   (11.09.2008 в 14:52)
 

с обратным заполнением я разобрался. точнее решил проблему вывода в обратном порядке. (прочесал архив форума). спасибо.

а вот по первому пункту (про освобождающееся значение, просто хочеться знать, а есть ли такой параметр поля в самой базе?) при помощи кода в сайте не хочеться решать эту проблему.

  Ответить  
 
 автор: cheops   (11.09.2008 в 15:37)   письмо автору
 
   для: valera380   (11.09.2008 в 15:25)
 

>а вот по первому пункту (про освобождающееся значение, просто хочеться знать, а есть ли
>такой параметр поля в самой базе?) при помощи кода в сайте не хочеться решать эту
>проблему.
К сожалению, нет. Дело в том, что механизм автоинкремента предназначен для создания уникальных значений, неразрывность в общем не входит в его функции.

  Ответить  
 
 автор: Valick   (11.09.2008 в 16:00)   письмо автору
 
   для: valera380   (11.09.2008 в 15:25)
 

Вы лучше напишите зачем вам это? Может таким образом вы хотите решить какую-то проблему, а она, к примеру, решается совсем по-другому.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования