您的位置:首页 > 其它

向表中插入数据的时候,自动删除重复的数据

2009-11-02 15:37 260 查看
create table EE
(
  ID int identity(1,1) primary key,
  bh int,
  rq datetime,
  sj varchar(20)
)
insert into EE select 1,'2009-09-09','09:01'
insert into EE select 1,'2009-09-09','09:02'

create trigger tg_Del
on EE
for insert
as
--如果表中存在的话
if exists(select * from EE join inserted i on EE.bh=i.bh and EE.rq=i.rq and EE.sj=i.sj)
--删除刚刚插入的信息
delete E1 from EE E1,inserted i where E1.bh=i.bh and E1.rq=i.rq and E1.sj=i.sj
and i.ID>E1.ID
--测试数据
insert into EE(bh,rq,sj) select 1,'2009-09-09','09:02'
select * from EE
ID          bh          rq                      sj
----------- ----------- ----------------------- --------------------
1           1           2009-09-09 00:00:00.000 09:01
3           1           2009-09-09 00:00:00.000 09:02

insert into EE(bh,rq,sj) select 1,'2009-09-09','09:03'

select * from EE

ID          bh          rq                      sj
----------- ----------- ----------------------- --------------------
1           1           2009-09-09 00:00:00.000 09:01
3           1           2009-09-09 00:00:00.000 09:02
4           1           2009-09-09 00:00:00.000 09:03
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐