Общие > Базы данных
Перемещение строк в таблице
for_i_0:
Здравствуйте, уважаемые !
проблема такая -> при исполнении запроса:
UPDATE some_tbl SET num = (num+2) WHERE num 33
выводится следующая ошибка:
Duplicate entry \'36\' for key 1
на сколько я понимаю он исполняется в следующем порядке 34+2...101+2
и естественно выдается ошибка.
Можно ли изменить пордок исполнения запроса ?
или я мыслю не в том направлении ?
спасибо за внимание :)
tserbis:
>> или я мыслю не в том направлении?
Весьма вероятно... Объясни, зачем ты делаешь это, тогда станет понятно, помогать тебе с запросом или объяснять как делать правильно.
Меняздесьдавнонет:
строки в таблице не нужно никуда перемещать.
Если вы работаете с базой, как будто это примитивный текстовый файл, не научившись абстрагировать хранение данных от их вывода, то база данных вам и вовсе не нужна.
for_i_0:
tserbis
У меня в таблице хранится статьи...
скрипт выводит текст на сайт мне нужно добавить в архив 2 -е статьи именно в том порядке в котором я исполняю запрос. Тоесть после 33 - ой статьи мне нужно добавить две статьи.
зарание спасибо.
RomikChef
А вы многоуважаемый по всей вероятности "ясновидящий" ;)
и вам спасибо.
tserbis:
for_i_0
по-правильному, тебе нужно сделать в этой таблице отдельное поле, по которому ты будешь сортировать и редактируя которое сможешь менять порядок. А нумерация с MySQL вообще не связана, нумеровать статьи надо в PHP при выводе.
Навигация
Перейти к полной версии