一、概述
SQLite 中,表设置自增列后,可通过如下几种方式获取插入记录的 ID
二、获取插入 ID 的几种方式
2.1、sqlite_sequence(推荐)
通过 SQLite 自增 ID 序列表获取,示例:
insert into TbTest(Name, Age) values('usr', 20);
select seq from sqlite_sequence where name='TbTest';
2.2、rowid
表设置了自增列,会生成 rowid 的隐藏列,需要显式查询语句才可以查询出,示例:
insert into TbTest(Name, Age) values('usr', 20);
select max(rowid) from TbTest;
2.3、ID 列
直接通过设置的 ID 列查询。
insert into TbTest(Name, Age) values('usr', 20);
select max(ID) from TbTest;
2.4、last_insert_rowid()
示例:
insert into TbTest(Name, Age) values('usr', 20);
--注意!若此行处有插入临时表的操作,下面的语句获取到的是插入临时表的 rowid
select last_insert_rowid() from TbTest LIMIT 1;