if (select count(*) from table where a='a')=0 insert into a(...) values(...)
insert into X select @A where not exist (select 1 from X where A=@A)
if not exists(select 1 from tb where A='X') insert into tb select 'X'
declare @x table(a int primary key) insert into @x select 1 select * from @x --insert into @x select 1 --Cannot insert duplicate key in object 'dbo.@x'.已经设置主键了,重复数据插入不了,sql server自动判断。
异常处理一下,客户肯定是看不到的。正常的处理就是先判断是否存在,存在提示客户已存在。一条语句有点搞不定。if not exists(select 1 from tb where A='X') insert into tb select 'X' --select '插入成功' else select '已存在'
declare @x table(a int primary key)
insert into @x select 1
select * from @x
--insert into @x select 1
--Cannot insert duplicate key in object 'dbo.@x'.已经设置主键了,重复数据插入不了,sql server自动判断。
insert into tb select 'X'
--select '插入成功'
else
select '已存在'