DECLARE @s nvarchar(1000);
SET @CurrentJuniferId =9456787763223
SET @s = 'CREATE SEQUENCE dbo.nbrSequence START WITH '
CAST(@CurrentJuniferId AS bigint) '
INCREMENT BY 1
NO CYCLE'
EXEC (@s)
SET @CurrentJuniferId
我收到一個錯誤:
訊息 8114,級別 16,狀態 5,程序 sp_SEQuenceNbr_Allentities,第 48 行 [批處理開始第 11 行]
將資料型別 varchar 轉換為 bigint 時出錯。
uj5u.com熱心網友回復:
錯誤訊息會準確地告訴您問題所在。
您已宣告@s為 anvarchar但您正試圖bigint從選擇查詢中回傳 a 。而不是轉換為 bigint,而是轉換為varchar/ nvarchar。
uj5u.com熱心網友回復:
對于字串連接,T-SQL 不會自動將數值轉換為字串——這取決于你。
因此,請改用此代碼:
DECLARE @s NVARCHAR(1000);
DECLARE @CurrentJuniferId BIGINT;
SET @CurrentJuniferId = 9456787763223
SET @s = N'CREATE SEQUENCE dbo.nbrSequence '
N'START WITH ' CAST(@CurrentJuniferId AS NVARCHAR(20))
N'INCREMENT BY 1 NO CYCLE';
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/407726.html
標籤:
