sqlserver数据库identity用法
时间: 2024-12-10 18:49:05 浏览: 13
SQL Server数据库中的Identity关键字通常用于整数类型的列,如`int`,当这个列设置为Identity属性时,会有以下几个特性:
1. 自动增长:每次当你插入一条新的记录时,如果该列设置了Identity,SQL Server会自动为该列生成一个新的唯一的递增值。例如,默认从1开始,每次增加1。
2. 范围确定:默认情况下,Identity列的范围是从1到最大值(取决于数据类型,如`bigint`的最大值为2^63 - 1)。你可以通过配置`IDENTITY_MINVALUE`和`IDENTITY_MAXVALUE`来调整这个范围。
3. 无输入:当你尝试插入时,如果没有给Identity列提供值,系统会自动生成并使用。
4. 可配置的行为:可以设置初始值、步长以及是否允许间隙(即连续插入非递增值的情况)。这可以通过`IDENTITY_INSERT ON/OFF`控制。
5. 审计跟踪:对于审计目的,Identity列的每一次改变都是有迹可循的。
使用示例:
```sql
CREATE TABLE Users (
ID INT PRIMARY KEY IDENTITY(1, 1), -- 开始值1,步长1
Name VARCHAR(100),
CreatedDate DATETIME DEFAULT CURRENT_TIMESTAMP
);
```
阅读全文