我正在尝试为SQL Server中依赖于多个字段的UniqueID字段创建自动序列触发器。例如,我有一个名为animals
的表,其中有列Species,Sex,UniqueID
。我正在尝试为何时输入物种和性别创建触发器,该ID是根据该物种和性别的最后一个序列号自动填充的。需要看起来像DeerM0001
。到目前为止,这是我所拥有的,但是它不起作用。
CREATE TRIGGER tr_animalID
ON animal
AFTER INSERT,UPDATE
AS
BEGIN
SET NOCOUNT ON;
DeclARE @ID varchar(8)
SET @ID = (SELECT max(Species) FROM animal);
UPDATE animal
SET UniqueID = concat(Species,Sex) +0001
WHERE UniqueID = @ID;
END
GO