Страница 1 из 2

Непонятки c MySQl...

Добавлено: 23 авг 2005, 05:06
kfc
Проблема в следующем: Раньше информация добавлялась в Базу Данных условно говоря "вниз". Теперь информация идёт "наверх". Скрипт(перл) не позволяет таких вольностей(должен читать "сверху"). Изменить скрипт - значит поменять представление всей предшествующей информации, что недопустимо. Что произошло и как это можно исправить?

Добавлено: 23 авг 2005, 10:51
Yurich
"Вниз" и "вверх" это по значению primary key или как? Объясни более подробно.

Добавлено: 23 авг 2005, 14:11
UUU
<Телепат Вкл>
Скорее всего ситуация в следующем. Пусть есть поле ИД, которое автоинкремент. Если раньше при запросе
селект * фром табла
выдавались ИД в таком порядке: 1,2,3,4,5...
то теперь выдаются 10,9,8,7...
</Телепат Выкл>
Если так, что все нормально, были удаленные записи и мускуль новые пишет на физическое место старых. для правильного вывода служат сортировки ордер бай.

Добавлено: 23 авг 2005, 20:44
kfc
Нет, автоинкремента нет. Интересно то, что наутро всё работает как положено. Скрипт я не менял...

Добавлено: 24 авг 2005, 08:12
UUU
<Телепат Вкл>
Еще раз спрашиваю. Что за проблема. В БД нет понятия вверх или вниз.
</Телепат Выкл>

Добавлено: 24 авг 2005, 20:16
kfc
Я не знаю, как он записывает в базу, но при выполнении одного и того же запроса select * ..blablabla вечером выбирались записи которые были добавлены раньше, а утром - которые позже....

Добавлено: 24 авг 2005, 23:00
UUU
Так используй индексы, и все будет как надо.

Добавлено: 25 авг 2005, 00:15
kfc
Какие индексы? В скрипте?

Добавлено: 25 авг 2005, 17:24
UUU
В базе.

Добавлено: 25 авг 2005, 21:08
kfc
Каким образом? Мне нужно получить последнюю добавленную запись, к примеру.