Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > Добавление автоинкрементного поля в таблицу


Автор: Yar1973 19.7.2016, 12:36
В таблицу, кроме кластерного индекса, добавлено автоинкрементное поле с атрибутом IDENTITY. Поиск осуществляется только по нему, а не по полям индекса. Как сделать так, чтобы автоинкрементное поле не заменяло кластерный индекс?

Автор: Mers89 1.8.2016, 17:01
А как образуется уникальность кластерного индекса и зачем автоинкремент?

Автор: Yar1973 5.9.2016, 10:02
Таблица БД Paradox переведена на MS SQL Server. Поиск осуществляется в Delphi с помощью оператора FindKey. 
Автоинкрементное поле нужно, чтобы при добавлении в таблицу строки любым пользователем номер документа увеличивался на 1.

Автор: Akina 5.9.2016, 15:22
Цитата(Yar1973 @  5.9.2016,  11:02 Найти цитируемый пост)
Автоинкрементное поле нужно, чтобы при добавлении в таблицу строки любым пользователем номер документа увеличивался на 1. 

Автоинкремент НЕ ГАРАНТИРУЕТ непрерывной последовательности. Оставьте его для подсистемы целостности, а номера генерируйте с помощью SEQUENCE.

Автор: KaldYn 29.10.2016, 11:05
Цитата(Akina @ 5.9.2016,  15:22)
Цитата(Yar1973 @  5.9.2016,  11:02 Найти цитируемый пост)
Автоинкрементное поле нужно, чтобы при добавлении в таблицу строки любым пользователем номер документа увеличивался на 1. 

Автоинкремент НЕ ГАРАНТИРУЕТ непрерывной последовательности. Оставьте его для подсистемы целостности, а номера генерируйте с помощью SEQUENCE.

не знай как автору сообщения, но мне это помогло, спасибо за совет.

Автор: Mers89 4.11.2016, 05:33
Цитата(Akina @  5.9.2016,  15:22 Найти цитируемый пост)
а номера генерируйте с помощью SEQUENCE. 

Разве в MSSQL есть SEQUENCE? Он ведь кажется в Oracle.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)