Подтвердить что ты не робот

Что означает свойство "Идентичность" в SQL Server?

Я использую SQL Server в первый раз, и я вижу, что свойство столбца называется Идентичность.

Что это значит?

В чем преимущества маркировки свойства столбца как Is Identity = Yes?

4b9b3361

Ответ 1

Это просто означает, что столбец использует функцию Identity(seed, increment) для предоставления значений для первичного ключа (обычно). Он также известен как "Автономный номер". Вторая строка ниже - пример:

CREATE TABLE Table (
TableID bigint IDENTITY(1,1) NOT NULL,
DateTimeStamp datetime NOT NULL DEFAULT (getdate()),
Data nvarchar(100) NOT NULL,
CONSTRAINT PK_Table PRIMARY KEY CLUSTERED 
(
    TableID ASC
)

Он действует как значение по умолчанию для столбца, который увеличивается для каждой записи. Обратите внимание, что вы также можете получить значение, вставленное из SCOPE_IDENTITY(). Не используйте @@IDENTITY, поскольку он обесценивается и может возвращать неправильный результат в случае триггеров или вложенных контекстов.

Ответ 2

Флаг с указанием столбца Identity - может использоваться как столбец с автоматическим приращением (рекомендуется для любой таблицы)

у него много последствий, например, возможность получить идентификатор последней вставленной строки в таблице, используя @@IDENTITY или SCOPE_IDENTITY() и т.д.

Try: Понимание столбцов идентификаторов

Ответ 3

Это эквивалентно свойству MySQL AUTO_INCREMENT. Обычно используется в столбце первичного ключа

Ответ 5

Все свойства свойства SQL Server IDENTITY столбцов. И удобная процедура для мониторинга всех столбцов Identity. http://www.sqllion.com/2011/08/identity-in-sql/