mysql从第一个表插入两个表id

duj*_*icv 2 php mysql bulkinsert

我需要将一些数据插入到“公司”表中,其中包含以下列:company_id | 公司名称

并同时(从同一表格)进入另一个表 'contact_persons' : contact_name | 公司ID

其中company_id必须是“companys”表中的值,其中company_id是PK和AI。是否可以一步完成此操作,而不是先插入 company_name,然后读取表“companies”并检索“company_id”以将其插入到第二个表(“contact_persons”)中?

我不确定这是否可能,但它会更加优雅和高效......提前致谢。

Rah*_*hul 5

您可以使用LAST_INSERT_ID()从表中获取最后一个自动增量 idCompanies并将其插入到其他表中来完成此操作。就像是

INSERT INTO companies (company_name) VALUES ('test'); 
SET @last_id_companies = LAST_INSERT_ID();
INSERT INTO contact_persons (contact_name, company_id) 
                        VALUES ('test', @last_id_companies);
Run Code Online (Sandbox Code Playgroud)