约束的命令不太熟,给你写个触发器的吧...create trigger trigger_a on a after insert --假定你的表名叫a as begin declare @id varchar(max) declare @bh varchar(max) declare @mc varchar(max) select @id=convert(varchar,id),@bh=convert(varchar,bh),@mc=convert(varchar,mc) from inserted if(select 1 from a where convert(varchar,bh)=@bh and convert(varchar,mc)=@mc) is not null delete a where convert(varchar,id)=@id and convert(varchar,bh)=@bh and convert(varchar,mc)=@mc end
用唯一约束即可.. alter table [表名] add constraint uq_[表名] unique(bh,mc)
不好意思,写错了create trigger trigger_a on a after insert --假定你的表名叫a as begin declare @id varchar(max) declare @bh varchar(max) declare @mc varchar(max) select @id=convert(varchar,id),@bh=convert(varchar,bh),@mc=convert(varchar,mc) from inserted if(select 1 from a where convert(varchar,bh)=@bh and convert(varchar,mc)=@mc) > 0 delete a where convert(varchar,id)=@id and convert(varchar,bh)=@bh and convert(varchar,mc)=@mc end最好用约束控制,看4楼大神的
on a after insert --假定你的表名叫a
as
begin
declare @id varchar(max)
declare @bh varchar(max)
declare @mc varchar(max)
select @id=convert(varchar,id),@bh=convert(varchar,bh),@mc=convert(varchar,mc) from inserted
if(select 1 from a where convert(varchar,bh)=@bh and convert(varchar,mc)=@mc) is not null
delete a where convert(varchar,id)=@id and convert(varchar,bh)=@bh and convert(varchar,mc)=@mc
end
on a after insert --假定你的表名叫a
as
begin
declare @id varchar(max)
declare @bh varchar(max)
declare @mc varchar(max)
select @id=convert(varchar,id),@bh=convert(varchar,bh),@mc=convert(varchar,mc) from inserted
if(select 1 from a where convert(varchar,bh)=@bh and convert(varchar,mc)=@mc) > 0
delete a where convert(varchar,id)=@id and convert(varchar,bh)=@bh and convert(varchar,mc)=@mc
end最好用约束控制,看4楼大神的