IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'abc' AND type = 'TR')
DROP TRIGGER abccreate trigger abc
on tablename1
for insert
declare @a varchar(50)
declare @b varchar(50)
declare @c varchar(50)
select @a=n.id,@b=n.字段1,@c=n.字段2 from tablename1 n inner join inserted m on n.id=m.id
if exists(select 1 from tablename2 where id=@a and @b-字段1>0
union all select 1 from tablename2 where id=@a and @c-字段2>0)
begin
insert into tablename1(id,字段1,字段2) values(@a,@b/2+'Y',@c/2+'Y')
end
WHERE name = 'abc' AND type = 'TR')
DROP TRIGGER abccreate trigger abc
on tablename1
for insert
declare @a varchar(50)
declare @b varchar(50)
declare @c varchar(50)
select @a=n.id,@b=n.字段1,@c=n.字段2 from tablename1 n inner join inserted m on n.id=m.id
if exists(select 1 from tablename2 where id=@a and @b-字段1>0
union all select 1 from tablename2 where id=@a and @c-字段2>0)
begin
insert into tablename1(id,字段1,字段2) values(@a,@b/2+'Y',@c/2+'Y')
end
WHERE name = 'abc' AND type = 'TR')
DROP TRIGGER abc
---這裡上面和下面的分開執行
--create table tablenme1 (id int primary key,a varchar(30),b varchar(30))
---create table tablename2(id int primary key,a varchar(30),b varchar(30))
create trigger abc
on tablenme1
for insert
as
--declare @a varchar(50)
--declare @b varchar(50)
--declare @c varchar(50)
--select @a=n.id,@b=n.a,@c=n.b from tablename1 n inner join inserted m on n.id=m.id and n.a=m.a
if exists(select * from tablename2 a,tablename1b where a. id=b.id and a.a>b.a )
insert into tablename1(id,a,b) select n.id,(n.b)/2+'(y)' as a,n.b from tablename1 n inner join inserted m on n.id=m.id and n.a=m.a
else
insert into tablename1(id,a,b) select n.id,n.a,n.b from tablename1 n inner join inserted m on n.id=m.id and n.a=m.aif exists (select * from tablename2 a,tablename1b where a. id=b.id and a.b>b.b )
update tablename1 set b= b/2+'(y)'
----你自己對照自己的表改改看--注意,字段名最好不要起數字
--create table tablename1 (id int primary key,a varchar(30),b varchar(30))--上面tablename1
---create table tablename2(id int primary key,a varchar(30),b varchar(30))
create trigger abc
on tablename1---上面把這裡字母搞錯了
for insert
as
if exists(select * from tablename2 a,tablename1b where a. id=b.id and a.a>b.a )
insert into tablename1(id,a,b) select n.id,(n.b)/2+'(y)' as a,n.b from tablename1 n inner join inserted m on n.id=m.id and n.a=m.a
else
insert into tablename1(id,a,b) select n.id,n.a,n.b from tablename1 n inner join inserted m on n.id=m.id and n.a=m.aif exists (select * from tablename2 a,tablename1b where a. id=b.id and a.b>b.b )
update tablename1 set b= b/2+'(y)'
----你自己對照自己的表改改看--注意,字段名最好不要起數字