SQL Update辅助表,包含第一个表中的数据

时间:2013-03-19 16:34:13

标签: mysql sql

我只是在学习SQL,所以请原谅这是否有点简单。

我有一个应用程序表单,可以将数据保存到2个表:'应用程序'和'文件'。

Applications表有一个主键appID,它是自动增量的。

提交时,将在两个表中创建新记录。我的问题是,'files'表还有一个appID列,它应该与应用程序表中的值相同。

有人可以帮我构建我的SQL查询来实现这一目标(或者有更简洁的方法)吗?

由于

2 个答案:

答案 0 :(得分:1)

在为Application表发出INSERT语句后,在填充文件表的LAST_INSERT_ID()时使用appID函数:

例如:

# 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") 

答案 1 :(得分:0)

这样的事情应该有效。

insert into files
(appid, field1, field2, etc)
select appid, value1, value2, etc
from applications
where appid = the one you just inserted.