update tb set .... --更新字段自己写 from ta where ta.dm=tb.dm insert tb select * from ta t where not exists(select 1 from tb where dm=t.dm)
create tigger f on b for insert,update as begin insert into b select * from inserted where not exists(select 1 from a where dm=i.dm) update b set dm=i.dm from inserted i where exists(select 1 from a where dm=i.dm) end
create trigger my_tr on B for insert as update a set a.col1=b.col1,a.col2=b.col2..... from ta a join tb b on a.DM=b.DM insert ta select * from inserted t where not exists(select 1 from ta where dm=t.dm)
create trigger on B表 for insert asupdate b set b.col=a.col...... from insertd a, B表 b where a.dm=b.dminsert B表 select * from A表 a where not exists(select 1 from B表 b where a.dm=b.dm)
create trigger on_b on b instead of insert as begin delete b where exists(select * from inserted d where b.dm=dm) insert b select * from inserted end
create tigger f on b for insert,update as begin update b set col=i.col from inserted i,a where a.dm=i.dm insert into b select * from inserted where not exists(select 1 from a where dm=i.dm) end
from ta where ta.dm=tb.dm
insert tb
select *
from ta t
where not exists(select 1 from tb where dm=t.dm)
for insert,update
as
begin
insert into b select * from inserted where not exists(select 1 from a where dm=i.dm)
update b set dm=i.dm from inserted i where exists(select 1 from a where dm=i.dm)
end
for insert
as
update a set
a.col1=b.col1,a.col2=b.col2.....
from ta a
join tb b
on a.DM=b.DM
insert ta
select * from inserted t
where not exists(select 1 from ta where dm=t.dm)
create trigger on B表 for insert
asupdate b
set b.col=a.col......
from insertd a, B表 b
where a.dm=b.dminsert B表
select *
from A表 a
where not exists(select 1 from B表 b where a.dm=b.dm)
instead of insert
as
begin
delete b
where exists(select * from inserted d where b.dm=dm)
insert b
select * from inserted
end
--也就是说,B表在新增记录时,如果DM在A表中没存在,任意取一条A表中的数据插入到B表,是这样吗?
for insert,update
as
begin
update b set col=i.col from inserted i,a where a.dm=i.dm
insert into b select * from inserted where not exists(select 1 from a where dm=i.dm)
end
这2表字段不知道相同否
还有DM是不是主键。如果B表和A表是一样的表机构 而且DM是主键
那应该就可以了。
如果是表B已存在A表相同DM的记录就更新 --更新哪个表?