Naga Sindhura Ответов: 1

Как достичь концепции повторного заполнения поля uniqueidentifier


Hi,

We have the tables in the below two formats. As per my business requirement,  I need to reseed table Id to 3 times of the current/maximum Id value using RESEED concept. I can achieve this for table1 but not for table2.

Таблица-1:
CREATE TABLE Client
{
clientId int IDENTITY(1,1) NOT NULL,
Name VARCHAR(100)
}

Таблица-2:
CREATE TABLE Nomination
{
NominationId UniqueIdentifier NOT NULL,
NominationName VARCHAR(100)
}


Что я уже пробовал:

Я попытался применить концепцию повторного заполнения к таблице-2, но она не сработала.
Is there any way to reserve Ids in three times of the current max Id for table2 without altering the current table structure from UniqueIdentifier  to identity field.


Спасибо,
Синдху

1 Ответов

Рейтинг:
11

Richard Deeming

RESEED применяется только к IDENTITY столбцы.

Основываясь на опубликованном вами коде, Таблица 2 не обладающий один IDENTITY колонка. Поэтому вы не можете использовать RESEED с этим столом.


Naga Sindhura

Есть ли альтернатива для достижения этой цели? или possile с NEWSEQUENTIALID, если мы изменим таблицу?

Richard Deeming

Достигать что?

Вы НЕ МОГУ использовать RESEED с собой uniqueidentifier поле.

И в этом не было бы никакого смысла, потому что uniqueidentifier это случайное 128-битное число, а не последовательный идентификатор.