做个触发器就可以了。例子如下: create trigger angel_trigger on test instead of insert as begin declare @max int declare @count int select @count=count(test.a),@max=max(test.a) from test ,inserted where test.a = inserted.a if @count <> 0 raiserror ('兄弟,以%d为首的%d个数据就在字段a中了,你可不能这么做!',16,1,@max,@count) else insert test select * from inserted end go
declare @count int set @count = 0 select @count=count(*) from angel where angel.d = '0022' if @count = 0 insert into angel(angel.d,angel.s) values('0022','555')
if not exists(select count 1 from angel whre angel.d='0022') insert into angel(angel.d,angel.s)values('0022','555')
badtank(爱与宿命的连发枪)的正确 也可以先用你的程序判断,select * from 表 where field='条件' if rs.eof then 说明没有这条数据然后insert else 报错!
create trigger angel_trigger on test instead of insert
as
begin
declare @max int
declare @count int
select @count=count(test.a),@max=max(test.a) from test ,inserted where test.a = inserted.a
if @count <> 0 raiserror ('兄弟,以%d为首的%d个数据就在字段a中了,你可不能这么做!',16,1,@max,@count)
else insert test select * from inserted
end
go
set @count = 0
select @count=count(*) from angel where angel.d = '0022'
if @count = 0
insert into angel(angel.d,angel.s) values('0022','555')
insert into angel(angel.d,angel.s)values('0022','555')
也可以先用你的程序判断,select * from 表 where field='条件'
if rs.eof then
说明没有这条数据然后insert
else
报错!