Автоинкремент индекса для Microsoft SQL Server 2008 R2 - PullRequest
16 голосов
/ 19 ноября 2010

Я создал новую таблицу в SQL Server 2008 R2, и я хотел бы, чтобы индекс был на автоинкрементеКак это сделать?Тип данных идентичности отсутствует.я выбрал int

Ответы [ 2 ]

57 голосов
/ 19 ноября 2010

В SQL Server это не отдельный тип данных («автоинкремент») - но вы можете определить столбец INT как IDENTITY.

Как вы создаете свою таблицу - визуальный дизайнер или скрипт T-SQL ??

В T-SQL вы должны использовать:

CREATE TABLE dbo.MyTable(ID INT IDENTITY(1,1) ......

и в визуальномДизайнер таблицы, вам нужно проверить:

alt text

Это опция для столбца типа INT - вы можете определить начальное значение (начальное значение) и приращение - обычно оба они установленыдо 1.

2 голосов
/ 19 ноября 2010

Если определение вашей таблицы выглядит следующим образом,

....,
@id int,
....

измените его на

....
@id int identity(1,1),
....

. Это создаст столбец идентификаторов, который начинается с идентификатора 1 и продолжает увеличивать его на единицу.(т.е. шаг) при вставке каждой записи в таблицу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...