Saya punya yang berikut ini
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
Saya ingin menyisipkan catatan baru di MyTable dan mengatur ID ke nilai urutan berikutnya. Bagaimana saya bisa melakukannya? Pemicu mungkin, atau ada cara lain? Bagaimana?
Karena saya menggunakan SQL Server 2012, saya tidak ingin menggunakan Identity karena bug celah .
sql-server
sequence
BrunoLM
sumber
sumber
cache
dalam kasus ini? Di tautan hubungkan, Microsoft memberi tahu kami untuk menggunakanno cache
.Untuk menggunakan
SEQUENCE
dalamINSERT
pernyataan, Anda bisa mencoba ini:NEXT VALUE FOR dbo.MyTableID
adalah sintaks untuk mendapatkan nomor berikutnya dari aSEQUENCE
.sumber
Anda dapat menggunakan satu urutan untuk beberapa tabel, seperti yang ditunjukkan oleh contoh berikut:
Keluaran:
sqlfiddle
sumber