以前都分两步,先判断记录数: select count(*) 如果值等于0则表示不存在,然后再插入数据。其实可以用insert ...select一步完成
create procedure p_add_fav_task
@taskid int,@opid varchar(10)
as
insert into task_fav(taskid,opid,opdate)
select @taskid,@opid,getdate()
where not exists (select taskid from task_fav where taskid=@taskid and opid=@opid)
go
以上的例子是sql server中的。