ak1*_*ak1 1 sql-server sequence
我正在尝试使用此DML创建序列,我收到此错误:
'@maxBookingId'附近的语法不正确.
码:
DECLARE @maxBookingId AS INT
SELECT @maxBookingId = MAX(bookingid)
FROM booking
CREATE SEQUENCE Invoice_Seq AS INTEGER
START WITH @maxBookingId
INCREMENT BY 1
NO CYCLE;
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
不幸的是,这里没有变数.请改用动态SQL:
declare @maxBookingId as int
select @maxBookingId = max(bookingid) from booking
declare @s nvarchar(4000);
set @s = N'
CREATE SEQUENCE Invoice_Seq AS INTEGER
START WITH ' + cast(@maxBookingId as nvarchar) + '
INCREMENT BY 1
NO CYCLE;'
EXEC (@s);
Run Code Online (Sandbox Code Playgroud)