MSSQL数据库主键自增长原理及实现(mssql主键自增长)
MSSQL数据库主键自增长是数据库开发常见的存储方式,一个主键一般是系统自动生成的,无需开发者程序员输入。
MSSQL数据库的自增长原理主要由两部分组成,其一是SEQUENCE(序列),其二是Trigger(触发器)。
SEQUENCE(序列)是MSSQL数据库提供的一种功能,用来创建可供多个表使用的自增长列。可按两种方式创建SEQUENCE:
1、 在MSSQL数据库控制台命令行界面使用如下代码:
create sequence seq_name
start with begin_number
increment by increment_number
2、 使用GUI(图形用户界面)创建SEQUENCE:
步骤一:在数据库中新建一个SEQUENCE。
步骤二:配置SEQUENCE,如图所示。
Trigger(触发器)是MSSQL数据库提供的一种功能,可以在插入新记录的时候自动调用。可以使用如下代码创建Trigger:
CREATE TRIGGER trigger_name
ON table_name
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
UPDATE table_name SET Id=Sequence_name.NEXTVAL
FROM
INSERTED
END
上面的代码创建一个触发器,用来在插入数据到表中的时候,自动调用序列(SEQUENCE),自动为每一个记录设置一个ID,并且ID是自增长的。
综上所述,MSSQL数据库主键自增长原理具体就是通过SEQUENCE(序列)和Trigger(触发器)两个模块来实现的,使用SEQUENCE可以创建可供多个表使用的自增长列,然后通过Trigger(触发器),在每一条记录插入到表中的时候,自动调用SEQUENCE,并自动为它们设置一个自增长的ID。