准备工作:
表:
CREATE TABLE [dbo].[ttt](
[id] [smallint] IDENTITY(1,1) NOT NULL,
[mobile] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[xxx] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]触发器:CREATE TRIGGER [dbo].[mytriok]
   ON  [dbo].[ttt]
   after  INSERT
AS 
BEGINdeclare @msg varchar(50)
select @msg=mobile from inserted
if (select count(1) from ttt where mobile=@msg)>1
begin
rollback 
end
END
语句:
insert into ttt(mobile) values('yyy11')目的:是判断如果有重复的记录,则不插入。
但这样运行的时候会报错:
消息 3609,级别 16,状态 1,第 2 行
事务在触发器中结束。批处理已中止。
要求:能做到不报错,也不提示,而且id不要跳过去!这可以吗?