日期:2014-05-17  浏览次数:20546 次

触发器插入的ID更新另一个列
求一个触发器,当这个表插入一条数据时获得这个插入的ID 更新GetID
例如:插入 table 一行。

ID  name   age  sex   GetID
85  xx     30    女         

插入这条数据时 触发发得到

ID  name   age  sex   GetID
85  xx     30    女   85
thx

------解决方案--------------------
create trigger tri_tb
on tb
for insert
as 
begin

update a set GetID=b.GetID
from tb a
inner join inserted b on a.ID=b.ID

end

------解决方案--------------------
create trigger tri_tb
on tb
for insert
as 
begin

update a set GetID=b.ID
from tb a
inner join inserted b on a.ID=b.ID

end
------解决方案--------------------

create table jd
(ID int, name varchar(10), age int, sex varchar(10), GetID int)

-- 建触发器
create trigger tr_jd on jd 
after insert
as
begin
 update a
   set a.GetID=b.ID
   from jd a
   inner join inserted b on a.ID=b.ID
end

-- 测试
insert into jd(ID,name,age,sex)
 select 85, 'xx', 30, '女'
 
-- 结果          
select * from jd

/*
ID          name       age         sex        GetID
----------- ---------- ----------- ---------- -----------
85          xx         30          女          85