CREATE TRIGGER tg_bpb_cons_no ON dbo.t_bpb_cons
FOR INSERT
AS
/*
fungsi : membuat document bon permintaan barang maintenance number secara otomatis`
author : ryan
*/
declare @new_doc_no varchar(20)
declare @doc_no varchar(20)
--declare @doc_no bigint
--update doc no
SELECT @doc_no = max(cast(substring(doc_no,9,13) as integer)) from t_bpb_cons
IF (@doc_no IS NULL)
BEGIN
set @doc_no = 0
END
PRINT @DOC_NO
SELECT @new_doc_no = cast(@doc_no+1 as varchar(20))
SELECT @new_doc_no = LEFT('BPB/CON/',8+len(@new_doc_no))+@new_doc_no
UPDATE t_bpb_cons SET doc_no=@new_doc_no WHERE [ID]=(SELECT MAX([ID]) AS id from t_bpb_cons)
它在插入单条记录时工作正常,但我使用 Insert into tbl select tblvalue from AnotherTable 插入多条记录它只影响最后一条记录......为什么?