У меня есть следующее
CREATE TABLE [MyTable]
(
[ID] [bigint] PRIMARY KEY NOT NULL,
[Title] [nvarchar](64) NOT NULL
)
CREATE SEQUENCE MyTableID
START WITH 1
INCREMENT BY 1
NO CACHE
;
GO
Я хочу вставить новые записи в MyTable и установить идентификатор для следующего значения последовательности. Как мне это сделать? Триггер, может быть, или есть какой-то другой способ? Как?
Поскольку я использую SQL Server 2012, я не хочу использовать Identity из-за ошибки пробела .
sql-server
sequence
BrunoLM
источник
источник
cache
в этом случае? По ссылке подключения Microsoft говорит нам использоватьno cache
.Чтобы использовать
SEQUENCE
вINSERT
заявлении, вы можете попробовать это:NEXT VALUE FOR dbo.MyTableID
это синтаксис для получения следующего числа изSEQUENCE
.источник
Вы можете использовать одну последовательность для нескольких таблиц, как показано в следующем примере:
Вывод:
sqlfiddle
источник