在我的SQL我有這個疑問,我想增加ID與此插入具有增量ID
我不想使用identity(1,1)
INSERT INTO dbo.tbl_waredetails
(wd_id, wd_mt_code, wd_wa_Id, wd_supply, wd_description, wd_status)
SELECT
(SELECT ISNULL(MAX(wd.wd_id), 0) + 1
FROM dbo.tbl_waredetails AS wd),
dbo.tbl_material.mat_code, @id,
dbo.fun_CompRem(mat_code, -1, @user_id) AS supply,
NULL, 0
FROM
tbl_material
INNER JOIN
dbo.tbl_MatUnit ON dbo.tbl_material.mat_MatUnt_Code = dbo.tbl_MatUnit.Matunt_code
INNER JOIN
dbo.tbl_MatGroup ON dbo.tbl_material.mat_MatGrp_Code = dbo.tbl_MatGroup.MatGrp_Code
但它總是發2作爲ID
使用'IDENTITY'是做到這一點的最好也是最可靠的方法 - 爲什麼從一開始就排除它?手動執行的任何操作**都不容易出現併發安全問題,例如產生重複值 –