21.01.2019, 16:13 [+3 UTC]
в нашей команде: 3 342 чел. | участники онлайн: 8 (рекорд: 20)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.65 (20.01.2019)
JS-v.1.31 | CSS-v.3.35

Общие новости:
01.01.2019, 13:54

Форум:
14.01.2019, 10:08

Последний вопрос:
21.01.2019, 09:39
Всего: 148540

Последний ответ:
21.01.2019, 13:29
Всего: 257625

Последняя рассылка:
21.01.2019, 15:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
15.03.2013, 21:29 »
Александр Сергеевич
Спасибо!!! [вопрос № 187210, ответ № 272132]
18.10.2009, 19:28 »
Dargaard
Огромное спасибо! За неделю постараюсь собрать документы и пойду в службу занятости. [вопрос № 173372, ответ № 255533]

РАЗДЕЛ • Базы данных

Установка и настройка серверов баз данных, таблицы и запросы.

[администратор рассылки: Коцюрбенко Алексей aka Жерар (Мастер-Эксперт)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей aka Жерар
Статус: Мастер-Эксперт
Рейтинг: 402
Megaloman
Статус: Академик
Рейтинг: 286
solowey
Статус: Студент
Рейтинг: 211

Перейти к консультации №:
 

Консультация онлайн # 67859
Раздел: • Базы данных
Автор вопроса: Logicpc
Отправлена: 20.12.2006, 17:13
Поступило ответов: 2

У меня:
Microsoft SQL Enterprise Manager Version: 8.0
Есть Таблица Users .
В ней есть ID, FName, LName и так далее.
Иногда у меня удаляются записи, то есть идет ID=4, а потом ID=6.
Как можно с помощью SQL запроса , "обновить" таблицу, что бы числа шли по порядку?
Либо средствами Enterprise Manager?
(Поиск в нете делал и все свои книжки просматривал.)
Спасибо заранее.

Состояние: Консультация закрыта

Ответ # 132708 от Архангельский Андрей Германови

Здравствуйте, Logicpc!

1) Это бесмысслено, так как в классической теории БД записи располагаются в таблице ПРОИЗВОЛЬНО. Т.е. любая работа с таблицами не предполагает какого-либо порядка записей. Правда это не мешает отсортировать результат запроса в нужном порядке, но именно результат.
2) Если зачем-то нужно упаковать значения полей, чтобы значения поля шли по порядку, без дырок, то можно написать хранимую процедуру, которая в цикле просмотрит всю таблицу и изменит значения этих полей в нужном порядке.


Консультировал: Архангельский Андрей Германови
Дата отправки: 20.12.2006, 17:25

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 132806 от Игорь Елизаров

Здравствуйте, Logicpc!
Это происходит из-за того, что поле ID ключевое с автоинкрементом.
Если есть связи с другими таблицами, то это поле лучше не трогать, даже больше -
в этом случае категорически запрещено его менять, иначе нарушится целостность данных во всей базе.

Если таких связей нет, и действительно очень важно, чтобы не было дыр,то можно сделать поиграв со структурой таблицы Enterprice Manager.
- самым первым полем заводите новое поле ID1
- c поля ID снимаете автоинкремент и ключ
- на поле ID1 ставите автоинкремент и ключ
- сохраняете изменения

- затем необходимо удалить поле ID (или переименовать в ID_old)
- переименовать Id1 в ID
подобного эффекта можно также достичь, скопировав данные (кроме ID) в таблицу аналогичной структуры, а затем переименовав таблицу.

попробуйте.
как видите, в принципе это выполнимо, если сильно надо. Просто обычно этого никто не делает, внутренние идентификаторы системы обычно нигде не выводятся и не отображаются, поэтому какое у них значение абсолютно все равно.


Консультировал: Игорь Елизаров
Дата отправки: 21.12.2006, 09:32

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.20760 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.65 от 20.01.2019
Версия JS: 1.31 | Версия CSS: 3.35