Вы можете использовать GUID (UNIQUEIDENTIFIER) в своей таблице как PK, если вы не хотите использовать BIGINT. Максимальная емкость GUID составляет 2 ^ 128.
CREATE TABLE IntegratorQueue(
ID UNIQUEIDENTIFIER PRIMARY KEY DEFAULT NEWID(),--IDENTITY,
RefDetailId UNIQUEIDENTIFIER NOT NULL,
RefStartDate datetime
)
Но если вам нужно знать, когда ваша идентификационная информация INT превысит максимальное значение, вы должны проверить это перед вставкой.
INSERT INTO IntegratorQueue( RefDetailId, RefStartDate )
VALUES ( NEWID(), GETUTCDATE() )
-- INT capacity (-2,147,483,648) to (2,147,483,647 )
IF 2147483647 - SCOPE_IDENTITY() < 500000
--... Do something... send an Email ( xp_sendmail. http://msdn.microsoft.com/en-us/library/aa260697(v=sql.80).aspx )
-- Insert Notification records into an another table...
-- return with 1, or something else, like the end of your query instead of RETURN 0 RETURN 1 and check this... so on...
Может быть, CHCCKIDENT DBCC (имя таблицы, RESEED, текущее семя + вставлено)