在创建表时使用IDENTITY

时间:2017-09-11 06:38:13

标签: sql-server auto-increment identity

我正在学习SQL,对这个世界来说是全新的。我学习/阅读的有关使用标识的内容是:它用于创建带有种子和增量值〜标识(种子,增量)的标识列。但是,通过网上提供的一些示例数据库,我遇到了这个表创建脚本:

create table Customer 
(
    Id                   int                  identity,
    FirstName            nvarchar(40)         not null,
    LastName             nvarchar(40)         not null,
    City                 nvarchar(40)         null,
    Country              nvarchar(40)         null,
    Phone                nvarchar(20)         null,
    constraint PK_CUSTOMER primary key (Id)
)
go

我尝试用这段代码创建表格,但它很成功。

有人可以解释为什么IDENTITY这里没有种子和增量值吗?我们什么时候应该这样使用它(没有种子和增量值)?

TIA

1 个答案:

答案 0 :(得分:2)

使用时 - > Id int identity

相当于---> Id int identity(1,1)

因此,第一个值将插入到Id = 1的表中,并为下一行增加1。所以如果没有指定,这是身份的默认值。如果你想用一些特定的数字开始你的Id,那么你想要创建一个customerId列,它应该至少有5位id,而不是你要将列定义为---> CustomerId int identity(10000,1)