gpt4 book ai didi

sqlite - 如何访问 SQL 脚本中最后插入的行 ID?

转载 作者:IT王子 更新时间:2023-10-29 06:21:01 24 4
gpt4 key购买 nike

我正在使用 SQLite,我有一个属性表和一个子属性表。每个子属性都使用 fkPropertyId 列指向其父属性。现在,为了创建初始数据库,我有一个看起来像这样的脚本:

INSERT INTO property VALUES(1,.....);
INSERT INTO property VALUES(2,.....);
INSERT INTO property VALUES(3,.....);
INSERT INTO subproperty VALUES(1,.....,3);
INSERT INTO subproperty VALUES(2,.....,3);
INSERT INTO subproperty VALUES(3,.....,3);
INSERT INTO property VALUES(4,.....);

现在,我想摆脱硬编码的 rowId,所以它会是这样的:

INSERT INTO property VALUES(NULL,.....);
INSERT INTO property VALUES(NULL,.....);
INSERT INTO property VALUES(NULL,.....);
INSERT INTO subproperty VALUES(NULL,.....,X);
INSERT INTO subproperty VALUES(NULL,.....,X);
INSERT INTO subproperty VALUES(NULL,.....,X);
INSERT INTO property VALUES(NULL,.....);

其中 x 指的是属性表中最后插入的 rowId。现在是

(SELECT MAX(rowId) FROM property)

有没有更好的(技术上更准确的)方法来编写这个脚本?

最佳答案

使用 last_insert_rowid功能:

SELECT last_insert_rowid();

关于sqlite - 如何访问 SQL 脚本中最后插入的行 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1822135/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com