我只是在学习 SQL,所以如果这有点简单,请原谅。
我有一个将数据保存到 2 个表的应用程序表单:“应用程序”和“文件”。
Applications 表有一个主键 appID,它是自动递增的。
提交时,会在两个表中创建一条新记录。我的问题是,“文件”表也有一个 appID 列,它的值应该与应用程序表中的值相同。
有人可以帮我构建我的 SQL 查询来实现这一点(或者有没有更简洁的方法)?
谢谢
在为 Application 表发出INSERT
语句后,LAST_INSERT_ID()
在填充appID
files 表时使用该函数:
例如:
# NULL for appID
INSERT INTO Applications
VALUES (NULL, "app name")
# NULL for fileID, LAST_INSERT_ID() for recently inserted appID
INSERT INTO files
VALUES (NULL, LAST_INSERT_ID(), "file name")
像这样的东西应该工作。
insert into files
(appid, field1, field2, etc)
select appid, value1, value2, etc
from applications
where appid = the one you just inserted.