Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

проблема с нумерацией

76K
18 сентября 2012 года
Shirokuro
6 / / 03.01.2012
задали в колледже создать в MS SQL Server 2008 R2 базу данных с пятью таблицами.далее создать ограничения,внешние и уникальные ключи.вроде все получилось.но при изменении первых 200 строк IdCust и IdProd нумеруются не по очереди.например в IdCust номера 3,4,11,12,14,18.в чем может быть проблема?

вот полный текст задания.(лаб-ная №2)
Прикрепленные файлы:
560 Кб
Загрузок: 8.8K
414
18 сентября 2012 года
CassandraDied
763 / / 24.05.2012
Уникальные ключи в БД не нумируются постоянно с 1. Берётся последнее значение когда-либо присвоенное уникальному ключу + 1. Если тебе нужно задавать отдельный идентификатор, который будет идти попорядку, то, либо добавляй ещё один атрибут, либо задавай этот идентификатор явно в инсёрте.
76K
18 сентября 2012 года
Shirokuro
6 / / 03.01.2012
большое спасибо Вам за ответ!!!а вот "задавай этот идентификатор явно в инсёрте." это как?просто только изучать начали и пока плох разбираюсь...
414
18 сентября 2012 года
CassandraDied
763 / / 24.05.2012
Гугли INSERT, UPDATE, DELETE, SELECT для MS SQL.
76K
18 сентября 2012 года
Shirokuro
6 / / 03.01.2012
спасибо.=))))))))
только вот в IdCity почему-то нумерация правильная,а в этих вот нет.ОО
414
18 сентября 2012 года
CassandraDied
763 / / 24.05.2012
Смотри, что у тебя помечено, как PRIMARY KEY.
Вообще, было бы очень полезно почитать хотя бы основы SQL и избавить общественность от таких нубских вопросов, в котрых самому можно разобраться.
76K
18 сентября 2012 года
Shirokuro
6 / / 03.01.2012
хорошо.
я учусь пока.вы же тоже не с рождения про SQL знали, а тоже учились и были "нубом" когда то.
76K
18 сентября 2012 года
Shirokuro
6 / / 03.01.2012
з.ы.IdCity,IdProd,IdCust это первичные ключи в своих таблицах...
385
19 сентября 2012 года
SomewherSomehow
477 / / 25.07.2004
Ответ на ваш вопрос простой, если по каким-либо причинам, транзакция при добавлении нового номера не завершилась успешно, то уже выделенное значение счетчика для добавления строки в этой транзакции, не сбрасывается назад. Identity гарантирует генерацию следующего номера, но не непрерывность. И в этом нет большой проблемы. По этому, вопрос, а зачем вам нужно именно по очереди?
1
19 сентября 2012 года
kot_
7.3K / / 20.01.2000
Цитата: Shirokuro
спасибо.=))))))))
только вот в IdCity почему-то нумерация правильная,а в этих вот нет.ОО


если нужна нумерация "правильная" - ее нужно задавать руками. Например используя специальную таблицу - пул номеров. Тогда получение идентификатора и удаление его из пула можно делать в транзакции.
Но правда и в этом случае нет гарантий что в распределенной системе ВСЕ числа будут идти по порядку, ИМХО

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог