плюс 500, вы можете использовать:

становить два столбца в базе данных SQL Server в качестве автоматического приращения int с приращением seed 100?

 Damien_The_Unbeliever06 янв. 2011 г., 08:50
Предполагая, что вы имеете в виду в одной таблице, вы не можете. И что еще более важно, почему вы хотите?

Ответы на вопрос(2)

Решение Вопроса

однако есть некоторые идеи и обходные пути.Вот

Моделирование с использованием производной вычисляемой колонки

Если оба столбца «идентичности» синхронизированы друг с другом или вторая идентичность может быть получена из первого с использованием формулы, то может быть применим вычисляемый столбец, например, если второйidentity смещается на константу из фактического столбца Identity:

ALTER TABLE MyTable ADD OtherIdentity AS RealIdentity + 100;

гдеRealIdentity это факт / оригиналIDENTITY колонка.

Вычисленный столбец, полученный из примера Identity SqlFiddle здесь

Использование независимой последовательности

Другой альтернативой было бы использоватьнезависимая последовательность (Sql2012 и позже)

CREATE SEQUENCE MySequence START WITH 100;

CREATE TABLE MyTable
(
    RealIdentity INT IDENTITY(1,1),
    RandomCol NVARCHAR(100),
    FakeIdentity INT DEFAULT NEXT VALUE FOR MySequence
);

Пример последовательности SqlFiddle здесь

вы можете пометить только один столбец как личность. Однако, если между двумя столбцами идентификаторов существует математическое соотношение, вы можете использовать вычисляемый столбец. Например, если второйid равен первомуid плюс 500, вы можете использовать:

create table t1 (id1 int identity(1,100), id2 as id1 + 500)

Ваш ответ на вопрос