我正在创建一个包含1个标识列和1个唯一列的表。但是当我们在表中插入重复值时,它会显示我们预期的错误,但是标识列增加了1.which没有显示。我们的问题是为什么Identity列会增加? 示例: -
create table test (
id int identity( 1,1) ,
name varchar(20) not null unique,
description varchar(100)
)
首先插入命令: -
insert into test
values(‘Hello’,’India’)
再次运行相同的命令
insert into test
values(‘Hello’,’India’)
预期错误
消息2627,级别14,状态1,第1行 违反UNIQUE KEY约束'UQ__test__72E12F1B1571C0B7'。无法在对象'dbo.test'中插入重复键。重复键值为(Hello)。 声明已经终止。
insert into test
values(‘Hello Kalyan’,’India’)
然后输出
id name description
1 Hello India
3 Hello Kalyan India
为什么表中缺少2个?
请帮助。