Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / index / 5 сообщений из 5, страница 1 из 1
27.03.2003, 09:16
    #32127857
alexdd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
index
Есть таблица с полем serial
после удаления остаються разрывы в нумерации как можно сделать так, чтобы после удаления строки нумерация пересортировывалась..
пример.
1. 22222
2. 33333
3. 55555

после удаления

1.22222
3.55555

как сделать чтобы было

1.22222
2.55555

Заранее спасибо.
...
Рейтинг: 0 / 0
27.03.2003, 10:54
    #32127952
Konrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
index
Зачем это надо? Новые строки в любом случае не должны быть пронумерованы использовавшимися когда-либо идентификаторами. Иначе используй не автоинкремент, а числовой тип.

Можно, конечно создать копию таблицы, перебросить туда данные, затем удалить исходную таблицу, создать ее вновь и подсунуть ей данные из таблицы-копии. Но это чревато неприятностями - рушатся связи, теряются права пользователей и т.п.
...
Рейтинг: 0 / 0
27.03.2003, 14:41
    #32128194
Niemi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
index
А может это можно решить с помощью REINDEX, что то я не совсем уловил вопрос.
...
Рейтинг: 0 / 0
27.03.2003, 17:16
    #32128431
Konrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
index
REINDEX этим не занимается :)
...
Рейтинг: 0 / 0
06.04.2003, 01:52
    #32134180
Mixa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
index
А вот так.
CREATE TEMP SEQUENCE renum;
SELECT setval('renum', 1);
UPDATE tabl set indexfield = nextval('renum');
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / index / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]